Werte an Verbindungen in Baumdarstellung

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Werte an Verbindungen in Baumdarstellung

von Bartman » So 26. Feb 2017, 21:54

DEVV hat geschrieben:Wie schaffe ich, dass der Text von der Höhe her genau mittig neben der Linie haben möchte ? Bei der Verbindung von 1 nach 5 ist der Text nämlich zu weit oben.
In meinem Lösungsversuch benutze ich die Option pos.
child{
   child[missing]
   child{node[node1]{1. rel\_source}
      child{node{\includegraphics[width=4em]{example-image}}
         edge from parent node[right] {$\mathbf{2171,938*10^4}$}
      }
% Die Leerzeile erzeugt ohne Kommentarzeichen eine Fehlermeldung
   }
   edge from parent node[pos=1, right=2mm] {Text}% <- eingefügt
}

von DEVV » So 26. Feb 2017, 19:35

Tausend Dank, es waren wirklich die Leeren Zeilen. Hätte ich nicht gedacht...

Eine letzte Frage habe ich: Wie schaffe ich, dass der Text von der Höhe her genau mittig neben der Linie haben möchte ? Bei der Verbindung von 1 nach 5 ist der Text nämlich zu weit oben.

von Bartman » So 26. Feb 2017, 15:04

DEVV hat geschrieben:Und wie schaffe ich es etwas zwischen den puffer.png und den ersten Knoten zu schreiben (also auch an der Verbindung). Ich schaffe das nicht bei allen...

Bei der Kante von dem Bild zu 2. funktioniert es, bei der Kante von dem Bild zu 1. gibt es einen Fehler:
Abgesehen von der Fehlermeldung durch die Leerzeile, wird Deine Beschriftung zwischen der Puffer-Abbildung und 1. angezeigt.
\documentclass[tikz, border=5pt]{standalone}

\begin{document}
 \begin{tikzpicture}[sibling distance=8em]
             \tikzset{node1/.style={rectangle,rounded corners,draw=black, align=center, top color=white, bottom color=gray!20}}
             
             \node[node1](ub) {9. output}[grow'=up]
  child { node[node1] {4. str\_receiver}
   edge from parent node[left=2mm] {$1882,563*10^1$}  
  } ;
        \node[node1][above=2em](ob) at (ub-1.north)  {7. sender}[grow'=up]
          child { node[node1] {5. bin\_str\_join}
             child{node[node1]{3. bin\_str\_join}
                child{node[node1]{2. rel\_source}
                   child{node{\includegraphics[width=4em]{example-image}}
                  edge from parent node[left=2mm] {$\mathbf{5579,215*10^4}$}                  
                   }
                     }
                child{node[node1]{0. str\_source}
                   child{node{\includegraphics[width=4em]{example-image}}}
                  edge from parent node[right=2mm] {$8600,473$}                  
                   }
                   edge from parent node[left=2mm] {$3403,057$}  
                   }
          child{
             child[missing]
             child{node[node1]{1. rel\_source}
                child{node{\includegraphics[width=4em]{example-image}}
               edge from parent node[right] {$\mathbf{2171,938*10^4}$}
                }
% Die Leerzeile erzeugt ohne Kommentarzeichen eine Fehlermeldung
                }}
               edge from parent node[left=2mm]{$1627,428$}                
                };
             
          \path[<->,very thick,shorten <=.5ex,shorten >=.5ex](ub-1)
          edge node[pos=.5,right]{\includegraphics[width=3.5em]{example-image}}
           node[pos=.5,left]{$\mathbf{7973,254*10^4}$}(ob);

\path([xshift=2.75cm]ob-1-2.east)--++(1em,0)coordinate(h);
\draw[|-|,very thick]
(ob.south-|h)
-- node[xshift=.5cm][right]{Kernel}
(ob-1-1-1-1.north-|h)
;
\draw[|-|,very thick]
(ub-1.north-|h)
-- node[xshift=.5cm][right]{User}
(ub.south-|h)
;
\end{tikzpicture}
\end{document}

von DEVV » So 26. Feb 2017, 12:25

Okay danke. Und wie schaffe ich es etwas zwischen den puffer.png und den ersten Knoten zu schreiben (also auch an der Verbindung). Ich schaffe das nicht bei allen...


Bei der Kante von dem Bild zu 2. funktioniert es, bei der Kante von dem Bild zu 1. gibt es einen Fehler:
\begin{figure}[t]
			\begin{center}
			\scalebox{0.68}{
				\begin{tikzpicture}[sibling distance=8em]
    			\tikzset{node1/.style={rectangle,rounded corners,draw=black, align=center, top color=white, bottom color=gray!20}} 
    			
    			\node[node1](ub) {9. output}[grow'=up]
  child { node[node1] {4. str\_receiver} 
	edge from parent node[left=2mm] {$1882,563*10^1$}  
  } ; 
  		\node[node1][above=2em](ob) at (ub-1.north)  {7. sender}[grow'=up]
    		child { node[node1] {5. bin\_str\_join} 
    			child{node[node1]{3. bin\_str\_join}
    				child{node[node1]{2. rel\_source}
    					child{node{\includegraphics[width=4em]{puffer.png}}
						edge from parent node[left=2mm] {$\mathbf{5579,215*10^4}$}    					
    					} 
    					  }
    				child{node[node1]{0. str\_source}
    					child{node{\includegraphics[width=4em]{puffer.png}}} 
						edge from parent node[right=2mm] {$8600,473$}    					
    					}
    					edge from parent node[left=2mm] {$3403,057$}  
    					}
    		child{
    			child[missing]
    			child{node[node1]{1. rel\_source}
    				child{node{\includegraphics[width=4em]{puffer.png}}
					edge from parent node[right=0mm] {$\mathbf{2171,938*10^4}$}    				
    				}
					       				
    				}}
					edge from parent node[left=2mm]{$1627,428$}    				
    				};
  				
    		\path[<->,very thick,shorten <=.5ex,shorten >=.5ex](ub-1) 
    		edge node[pos=.5,right]{\includegraphics[width=3.5em]{Zeichnung.png}}
    		 node[pos=.5,left]{$\mathbf{7973,254*10^4}$}(ob);

\path([xshift=2.75cm]ob-1-2.east)--++(1em,0)coordinate(h);
\draw[|-|,very thick]
(ob.south-|h)
-- node[xshift=.5cm][right]{Kernel}
(ob-1-1-1-1.north-|h)
;
\draw[|-|,very thick]
(ub-1.north-|h)
-- node[xshift=.5cm][right]{User}
(ub.south-|h)
; 
    		\end{tikzpicture}}
		\end{center}    
\end{figure}

von Bartman » Sa 25. Feb 2017, 20:57

DEVV hat geschrieben:Okay danke, wie bekomme ich denn einen Text links neben den Doppelpfeil?
\path[<->,very thick,shorten <=.5ex,shorten >=.5ex](ub-1) 
   edge node[pos=.5,right]{\includegraphics[width=3.5em]{example-image}}
        node[pos=.5,left]{Text}(ob);

von DEVV » Sa 25. Feb 2017, 20:22

Okay danke, wie bekomme ich denn einen Text links neben den Doppelpfeil?

von Bartman » Sa 25. Feb 2017, 16:24

Denke bitte an die nötigen Vorkehrungen für die Pfade Deiner Grafikdateien.

Wie zentriere ich eine Abbildung oder Tabelle richtig?

Die Anwendung der \texttt-Befehle auf einen Teil der Knotenbeschriftungen finde ich passend. Es ist aber letztlich Deine Entscheidung.

Mir fällt zu Deinem Anliegen so etwas ein:
\documentclass[tikz, border=5pt]{standalone}
\usepackage[locale=DE]{siunitx}

\begin{document}
\begin{tikzpicture}[
	sibling distance=8em,
	node1/.style={
		rectangle,
		rounded corners,
		draw,
		align=center, 
		top color=white, 
		bottom color=gray!20
	}
]         
  \node[node1](ub) {9. \texttt{output}}[grow'=up]
  child { node[node1] {4. \texttt{str\_receiver}} } ; 
        \node[node1][above=2em](ob) at (ub-1.north)  {7. \texttt{sender}}[grow'=up]
          child { node[node1] {5. \texttt{bin\_str\_join}} 
             child{node[node1]{3. \texttt{bin\_str\_join}}
                child{node[node1]{2. \texttt{rel\_source}}
                   child{node{\includegraphics[width=4em]{example-image}}} 
                }
                child{node[node1]{0. \texttt{str\_source}}
                   child{node{\includegraphics[width=4em]{example-image}}} 
                }
                edge from parent node[left=2mm] {\num{2171,938e4}}
             }
             child{
                child[missing]
                child{node[node1]{1. \texttt{rel\_source}}
                   child{node{\includegraphics[width=4em]{example-image}}}
                }
                edge from parent node[right=2mm] {\num{2171,938e4}}
             }
          };
              
          \path[<->,very thick,shorten <=.5ex,shorten >=.5ex](ub-1) edge node[pos=.5,right]{\includegraphics[width=3.5em]{example-image}}(ob);

\path([xshift=2.75cm]ob-1-2.east)--++(1em,0)coordinate(h);
\draw[|-|,very thick]
(ob.south-|h)
-- node[xshift=.5cm][right]{Kernel}
(ob-1-1-1-1.north-|h)
;
\draw[|-|,very thick]
(ub-1.north-|h)
-- node[xshift=.5cm][right]{User}
(ub.south-|h)
; 
\end{tikzpicture}
\end{document}

Werte an Verbindungen in Baumdarstellung

von DEVV » Sa 25. Feb 2017, 15:00

Hallo Leute,

ich habe aktuell eine Baumdarstellung, an der ich gerne Werte an die Verbindungen schreiben würde:
\documentclass[12pt,twoside,a4paper]{article}
\usepackage{tikz}
\usepackage{graphicx}
\begin{document}
\begin{figure}
		\begin{center}
			\scalebox{0.58}{
				\begin{tikzpicture}[sibling distance=8em]
    			\tikzset{node1/.style={rectangle,rounded corners,draw=black, align=center, top color=white, bottom color=gray!20}} 
    			
    			\node[node1](ub) {9. output}[grow'=up]
  child { node[node1] {4. str\_receiver} } ; 
  		\node[node1][above=2em](ob) at (ub-1.north)  {7. sender}[grow'=up]
    		child { node[node1] {5. bin\_str\_join} 
    			child{node[node1]{3. bin\_str\_join}
    				child{node[node1]{2. rel\_source}
    					child{node{\includegraphics[width=4em]{puffer.png}}} }
    				child{node[node1]{0. str\_source}
    					child{node{\includegraphics[width=4em]{puffer.png}}} }}
    		child{
    			child[missing]
    			child{node[node1]{1. rel\_source}
    				child{node{\includegraphics[width=4em]{puffer.png}}}}}};
  				
    		\path[<->,very thick,shorten <=.5ex,shorten >=.5ex](ub-1) edge node[pos=.5,right]{\includegraphics[width=3.5em]{Zeichnung.png}}(ob);

\path([xshift=2.75cm]ob-1-2.east)--++(1em,0)coordinate(h);
\draw[|-|,very thick]
(ob.south-|h)
-- node[xshift=.5cm][right]{Kernel}
(ob-1-1-1-1.north-|h)
;
\draw[|-|,very thick]
(ub-1.north-|h)
-- node[xshift=.5cm][right]{User}
(ub.south-|h)
; 
    		\end{tikzpicture}}
    	\end{center}
    	\caption{Anfrageplan der \textbf{Netsimple-Anfrage}.}
	\end{figure}
\end{document}
Es sollen Werte wie z.B. 2171,938 ∗ 10^4 an die Kanten geschrieben werden.

Nach oben