![Anders gerichteter Graph](https://rvso.com/image/298811/Anders%20gerichteter%20Graph.png)
Ich muss ein Diagramm ähnlich dem im Bild oben erstellen, weiß aber nicht, wie ich die horizontalen Linien ohne Pfeil oder den vertikalen Pfeil erstellen kann. Das Beste, was ich tun kann, ist Folgendes:
\documentclass{amsart}
\usepackage{tikz}
\begin{document}
\begin{center}
\begin{tikzpicture}
\node (p1) at ( 0, 0) {};
\node (p2) at ( 1, -0.2) {i};
\node (p3) at ( 3,0) {};
\node (p4) at ( 0,1) {};
\node (p5) at ( 2,1.2) {n+j};
\node (p6) at ( 3,1) {};
\begin{scope}[every path/.style={->}]
\draw (p1) -- (p3);
\draw (p4) -- (p6);
\draw (p2) -- (p5);
\end{scope}
\end{tikzpicture}
\end{center}
\end{document}
Ausgabe
Antwort1
Ist dies das gewünschte Ergebnis:
Anmerkungen:
- Wenn Sie keine Pfeilspitzen am Ende von Zeilen haben möchten, ändern Sie entweder den Stil
every path/.style={-}
oder entfernen Sie diese Option einfach, wie ich es unten getan habe. Zeilen erhalten standardmäßig keine Pfeilspitzen. - Der gewünschte Pfeilstil ist
-latex
. Fügen Sie diese Option also einfach bei Bedarf hinzu (wie es bei der orangefarbenen Linie der Fall ist). - Hinzugefügt
shorten <=
undshorten >=
um die orange Linie zu verlängern. Alternativ können Sie manuell Punkte auswählen, dieAndie Linie. - Die
calc
Bibliothek wurde verwendet, um den Mittelpunktcoordinate
s zu berechnen, mit dem die vertikale schwarze Linie gezeichnet wurde. - Ich habe die Knotenbeschriftungen durch Hinzufügen so eingerichtet, dass sie im mathematischen Modus sind
$
. - Es wurden Farben hinzugefügt, damit leichter erkennbar ist, welcher Zeichenbefehl was bewirkt.
Code:
\documentclass{amsart}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{center}
\begin{tikzpicture}[thick]
\node (p1) at ( 0, 0) {};
\node (p2) at ( 1, -0.2) {$i$};
\node (p3) at ( 3,0) {};
\node (p4) at ( 0,1) {};
\node (p5) at ( 2,1.2) {$n+j$};
\node (p6) at ( 3,1) {};
\coordinate (p1MidwayP3) at ($(p1)!0.5!(p3)$);
\coordinate (p4MidwayP6) at ($(p4)!0.5!(p6)$);
\begin{scope}%[every path/.style={-}]
\draw [red] (p1) -- (p3);
\draw [blue] (p4) -- (p6);
\draw [orange, shorten <=-0.08cm, shorten >=-0.10cm, -latex](p2) -- (p5);
\draw (p1MidwayP3) -- (p4MidwayP6);
\end{scope}
\end{tikzpicture}
\end{center}
\end{document}
Antwort2
Eine PSTricks-Lösung, kombiniert mitxfp
:
\documentclass{article}
\usepackage{pstricks-add}
\usepackage{xfp}
\begin{document}
\def\Horizontal{5} % length of the horizontal line segments
\def\Vertical{3} % length of the vertical line segment
\def\Indent{0.5} % indentation of the arrow from both sides
\begin{pspicture}(0,-0.4)(\Horizontal,\fpeval{\Vertical+0.45})
\psline(0,0)(\Horizontal,0)
\psline(0,\Vertical)(\Horizontal,\Vertical)
\psline(\fpeval{\Horizontal/2},0)(\fpeval{\Horizontal/2},\Vertical)
\psline{->}(\Indent,0)(\fpeval{\Horizontal-\Indent},\Vertical)
\uput[270](\Indent,0){$i$}
\uput[90](\fpeval{\Horizontal-\Indent},\Vertical){$n+j$}
\end{pspicture}
\end{document}
Sie müssen lediglich die Werte von \Horizontal
, \Vertical
, und auswählen \Indent
und die Zeichnung wird entsprechend angepasst.