\documentclass{scrbook} \usepackage{tikz} \usetikzlibrary{shapes,arrows,positioning} \usetikzlibrary{matrix} \usetikzlibrary{mindmap} \begin{document} \begin{figure}[!hbtp] \centering \begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=40mm,thick,main node/.style={chamfered rectangle,fill=gray!20,draw,font=\sffamily\Large\bfseries}] \node[main node] (1) {{\scriptsize {\normalsize Computer Running an Interpreter}}}; \node[main node] (2) [above of=1] {{\scriptsize {\normalsize Source Code (Program)}}}; \node[main node] (3) [left of=1] {{\scriptsize {\normalsize Inputs}}}; \node[main node] (4) [right of=1] {{\scriptsize {\normalsize Outputs}}}; \path[every node/.style={font=\sffamily\small}] (2) edge [->] (1); \path[every node/.style={font=\sffamily\small}] (3) edge [->] (1); \path[every node/.style={font=\sffamily\small}] (1) edge [->] (4); \end{tikzpicture} \caption{Interpreting a High--Level Language} \label{Inter} \end{figure} \end{document}
Tikz Node überlappt, horizonal Abstände vergrößern/verkleine
Tikz Node überlappt, horizonal Abstände vergrößern/verkleine
Wie kann ich bei meinem Mindmap die Abstände einzeln anpassen, dass, dass die Felder nicht überlappen?
Vielen Dank für eure Hilfe,
Nadezda.
Nadezda.
Du kannst sowohl den vertikalen als auch den horizontalen Abstand von nodes global einstellen:
.
Damit das als Abstand zwischen den Rändern der Nodes und nicht zwischen deren Zentren verwendet wird, muss das of hinter das =
Zwischen = und of kannst Du dann außerdem den Abstand lokal anpassen. Beispielsweise
node distance=2cm and 1cm
Damit das als Abstand zwischen den Rändern der Nodes und nicht zwischen deren Zentren verwendet wird, muss das of hinter das =
\documentclass{scrbook} \usepackage{tikz} \usetikzlibrary{shapes,arrows,positioning} \usetikzlibrary{matrix} \usetikzlibrary{mindmap} \begin{document} \begin{figure}[!hbtp] \centering \begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=2cm and 1cm,thick,main node/.style={chamfered rectangle,fill=gray!20,draw,font=\sffamily\Large\bfseries}] \node[main node] (1) {{\scriptsize {\normalsize Computer Running an Interpreter}}}; \node[main node] (2) [above = of 1] {{\scriptsize {\normalsize Source Code (Program)}}}; \node[main node] (3) [left = of 1] {{\scriptsize {\normalsize Inputs}}}; \node[main node] (4) [right = of 1] {{\scriptsize {\normalsize Outputs}}}; \path[every node/.style={font=\sffamily\small}] (2) edge [->] (1); \path[every node/.style={font=\sffamily\small}] (3) edge [->] (1); \path[every node/.style={font=\sffamily\small}] (1) edge [->] (4); \end{tikzpicture} \caption{Interpreting a High--Level Language} \label{Inter} \end{figure} \end{document}
\node[main node] (4) [right = 3cm of 1] {{\scriptsize {\normalsize Outputs}}};
Du kannst beispielsweise die Breite der Felder beeinflussen und so auch einen Zeilenumbruch in einem Feld erlauben:
BTW: Für Mindmaps gibt es tolle Bespiele unter http://www.texample.net/tikz/examples/feature/mindmaps/. Dagegen sieht das, was du da machst, eher nach einem verkümmerten Flussdiagramms aus. Dafür zeigt http://www.texample.net/tikz/examples/c ... flowchart/ ganz gut, wie das mit der Definition unterschiedlicher Kästen mit unterschiedlicher Breite und Höhe in einem komplexen Beispiel funktioniert.
\documentclass{scrbook} \usepackage{tikz} \usetikzlibrary{shapes,arrows,positioning} \usetikzlibrary{matrix} \usetikzlibrary{mindmap} \begin{document} \begin{figure}[!hbtp] \centering \begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=40mm,thick,main node/.style={chamfered rectangle,fill=gray!20,draw,font=\sffamily\Large\bfseries}] \node[main node,text width=8em] (1) {{\scriptsize {\normalsize Computer Running an Interpreter}}}; \node[main node] (2) [above of=1] {{\scriptsize {\normalsize Source Code (Program)}}}; \node[main node] (3) [left of=1] {{\scriptsize {\normalsize Inputs}}}; \node[main node] (4) [right of=1] {{\scriptsize {\normalsize Outputs}}}; \path[every node/.style={font=\sffamily\small}] (2) edge [->] (1); \path[every node/.style={font=\sffamily\small}] (3) edge [->] (1); \path[every node/.style={font=\sffamily\small}] (1) edge [->] (4); \end{tikzpicture} \caption{Interpreting a High--Level Language} \label{Inter} \end{figure} \end{document}