Möchten Sie die folgende Formfunktion in TikZ erstellen?

Möchten Sie die folgende Formfunktion in TikZ erstellen?

Möchten Sie die folgenden Formen in TikZ verwenden?Bildbeschreibung hier eingeben

\begin{tikzpicture}
\tikzstyle{every node}=[draw,shape=circle];
\draw (0,0)  --   (0,1)  node {1};
\draw (0,1)  --   (1,1)  node {2};
\draw (1,1)  --   (1,0)  node {3};
\draw (1,0) --    (0,0)  node {4};
\end{tikzpicture}
\begin{tikzpicture}
\tikzstyle{every node}=[draw,shape=circle];
\draw (0,0)  -- ++  (1,1)  node {1};
\draw (1,1)  -- ++  (1,-1) node {2};
\draw (0,0)  --  ++ (2,0)  node {3};
\end{tikzpicture}

Antwort1

Versuchen Sie, diesen Code zu verstehen, und Sie werden wissen, wie Sie sie alle zeichnen.

Beginnen Sie mit der Definition der Koordinaten.

\coordinate (1) at (0,0,2);

erstellt ein coordinate node( nodedimensionsloses) mit dem Namen 1am Punkt (x,y,z)=(0,0,2). 2bedeutet 2cm. Wenn Sie eine bestimmte Einheit ändern müssen, ändern Sie sie cmin mm, in, … Später erfolgt die Referenzierung auf den Punkt (0,0,2) mit (1). Es ist nicht erforderlich, sich dessen spezielle Koordinaten zu merken.

Platzieren Sie zweitens Kreise in jeder Koordinate und fügen Sie ihnen Beschriftungen hinzu.

    \fill (1) circle (1pt) node [below] {1};

zeichnet und füllt einen Kreis mit Radius 1pt(1 Punkt) mit Mittelpunkt in der Koordinate 1. Darunter 1wird ein Knoten mit Text platziert. Da die Punkte 1 bis 4 unten und 5 bis 8 oben eine Beschriftung haben, ist es möglich, eine foreachSchleife zu verwenden.

Zuletzt drawdie Linien zwischen den Koordinaten:

\draw[dashed] (1)--(4)--(3) (4)--(8);

zeichnet eine dashedLinie von Koordinate 1 nach 4 und 3. Als nächstes platziert er den Stift auf Koordinate 4 und zeichnet eine weitere Linie zur Koordinate 8.

Sie können nodes( coordinatessind Knoten) verwenden, um andere Knoten zu positionieren. JLDiaz hat in seinen Kommentaren erklärt, wie man calcdie Syntax verwendet (erfordert \usetikzlibrary{calc} in der Präambel):

\coordinate (17) at ($(1)!.5!(5)$);

definiert eine neue Koordinate 17für "den Punkt auf der Linie (1)-(5), der 50% der Distanz von (1) entfernt ist" (die !.5! bedeutet 50%). Sobald Sie eine Koordinate 17definiert haben, können Sie sie erneut anwenden \fill (17) circle (1pt) node [left] {17};, um den Kreis zu zeichnen und zu beschriften.

Eine alternative Syntax könnte sein

\path (1) -- (5) coordinate[pos=0.5] (17);

Das bedeutet, dass Sie sich von diesem Pfad 1zu diesem bewegen 5und dort pos=0.5einen Koordinatenknoten mit dem Namen 17 platzieren. Diese Syntax verwendet keine calcBibliothek.

Als Übung: Was glauben Sie, was \coordinate (27) at ($(1)!.5!(7)$);passiert?

Vor dem vollständigen Code noch ein kleiner Vorschlag. Wenn Sie sich von der riesigen Dokumentation eingeschüchtert fühlen TiKZ, werfen Sie einen Blick auf einige der empfohlenen Dokumente in

Nun der komplette Code

\documentclass[tikz, border=2mm]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}

\coordinate (1) at (0,0,2);
\coordinate (2) at (2,0,2);
\coordinate (3) at (2,0,0);
\coordinate (4) at (0,0,0);
\coordinate (5) at (0,2,2);
\coordinate (6) at (2,2,2);
\coordinate (7) at (2,2,0);
\coordinate (8) at (0,2,0);

\coordinate (17) at ($(1)!.5!(5)$);
\coordinate (27) at ($(1)!.5!(7)$);

\foreach \i in {1,...,4}
    \fill (\i) circle (1pt) node [below] {\i};

\foreach \i in {5,...,8}
    \fill (\i) circle (1pt) node [above] {\i};

\fill (17) circle (1pt) node [left] {17};
\fill (27) circle (1pt) node [above] {27};

\draw (1) --(2) --(3) --(7) --(6)--(5)--(8)--(7);
\draw (1)--(5) (2)--(6);
\draw[dashed] (1)--(4) --(3) (4)--(8);

\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen