Ich möchte ein Bild mit Beispiel: \documentclass[tikz]{standalone} \usetikzlibrary{positioning} \begin{document} \begin{tikzpicture}[ block/.style={ draw, rectangle, minimum width=1.5cm } ] \node[block] (a) at (0,0) {Block a}; \node[block, below=1 of a] (b) {Block b}; \node[block, below=1 of b] (c) {Block c}; \node[block, right=4 of b, minimum height=5cm] (d) {Block d}; % der ist exakt \draw[-stealth] (b) -- (d) node[pos=0.5, above]{\emph{exakt} horizontal}; % der ist gepfuscht \draw[-stealth] (c.east) -- ([yshift=-1.4cm]d.west) node[pos=0.5, above] {geschätzt horizontal}; % der hier auch \draw[-stealth] (a.east) -- (d.116) node[pos=0.5, above] {geschätzt horizontal}; \end{tikzpicture} \end{document} Frage: Gibt es einen eleganteren Weg, Dank dem Link von Bartman hab ich schonmal eine vielversprechende Lösung entdeckt. Aber irgendwie bin ich gerade zu doof, das umzusetzen :( Beispielsweise würde ich jetzt Zeile 23 im Code:
ersetzen durch:
Dann verschwindet aber der Pfeil von "Block a" zu "Block d" komplett, bzw. der rutscht runter und liegt dann genau auf dem Pfeil von "Block b" nach " Block d". EDIT: Ich hab jetzt mal hinbekommen, das fühlt sich aber schon arg gepfuscht an: ich habe auf der rechten Seite zwei "unsichtbare" Blöcke, jeweils auf der Höhe von "Block a" und "Block c" erzeugt und anschließend die beiden mit jeweils ihrem unsichtbaren "Partner" verbunden. Funktioniert zwar und schaut so aus, wie ich es mir erhofft hatte, aber da muss es doch eine schnellere Lösung für geben(?) So geht es: \documentclass[tikz]{standalone} \usetikzlibrary{positioning} \begin{document} \begin{tikzpicture}[ block/.style={ draw, rectangle, minimum width=1.5cm, execute at begin node=\strut } ] \node[block] (a) at (0,0) {Block a}; \node[block, below=1 of a] (b) {Block b}; \node[block, below=1 of b] (c) {Block c}; \node[block, right=4 of b, draw=white] (d) {Block d}; % getrickst \node[block, above=1 of d, draw=white](astar){}; \node[block, below=1 of d, draw=white](cstar){}; \node[block, right=4 of b, minimum height=4cm]{}; % der ist exakt \draw[-stealth] (b) -- (d) node[pos=0.5, above]{\emph{exakt} horizontal}; % der ist gepfuscht \draw[-stealth] (c) -- (cstar) node[pos=0.5, above] {geschätzt horizontal}; % der hier auch \draw[-stealth] (a) -- (astar) node[pos=0.5, above]{geschätzt horizontal}; \end{tikzpicture} \end{document} gefragt 26 Mai '22, 08:24 AndreGismo |
Der zweite Befehl aus Stefans Antwort muss nur geringfügig angepasst werden, um die gewünschte Ausgabe zu bekommen. Auch der Abschnitt 13.3.1 "Intersections of Perpendicular Lines" im \documentclass[tikz, border=5pt]{standalone} \usetikzlibrary{positioning,arrows.meta} \begin{document} \begin{tikzpicture}[ >=Stealth, block/.style={ draw, % rectangle,% Standardeinstellung jedes Knoten minimum width=1.5cm, execute at begin node=\strut } ] \node[block] (a) {Block a};% at (0,0) ändert hier nichts % Die Zuweisung von 1 oder 1cm ist die Voreinstellung von node distance. \node[block, below=of a] (b) {Block b}; \node[block, below=of b] (c) {Block c}; \node[block, right=4cm of b, minimum height=5cm] (d) {Block d}; % Drei Befehle werden durch einen ersetzt. \path [->] (b) edge (d) (c) edge (c-|d.west) (a) edge (a-|d.west) ; \end{tikzpicture} \end{document} beantwortet 27 Mai '22, 07:44 Bartman ah verstehe, danke!
(30 Mai '22, 08:11)
AndreGismo
|
Stefans Antwort sollte auch Deine Frage beantworten können.
ahh super, das schaut doch vielversprechend aus, danke für den Link! :)