latex
Rita grafer
Sök…
TikZ - Manuell layout
Paketet TikZ lämpar sig mycket bra för ritning av grafer.
Detta är ett litet exempel (kräver TikZ 3.0+):
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning,arrows.meta}
\begin{document}
\begin{tikzpicture}[auto,vertex/.style={draw,circle}]
\node[vertex] (a) {A};
\node[vertex,right=1cm of a] (b) {B};
\node[vertex,below right=1cm and 0.5cm of a] (c) {C};
\path[-{Stealth[]}]
(a) edge node {1} (b)
(a) edge (c)
(c) edge (b);
\end{tikzpicture}
\end{document}
Du kan skapa godtyckligt komplexa grafer; akta dig emellertid lång kod. Kom ihåg att det finns \foreach
och notera alla positionerings- och stylingsalternativ (se TikZ-handboken, avsnitt 13 till 17).
TikZ - Grafspecifikationer
TikZ tillhandahåller syntax som liknar DOT som du kan använda för att dra åt din grafritningskod avsevärt.
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs,quotes,arrows.meta}
\begin{document}
\begin{tikzpicture}
\graph[nodes={draw,circle},edges={-{Stealth[]}}] {
A -> ["1"] B,
A -> C,
C -> B
};
\end{tikzpicture}
\end{document}
Som du ser handlar du med finkornig kontroll för enklare syntax. graphs
lyser verkligen när du anger mer komplicerade grafer:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs,graphs.standard}
\begin{document}
\begin{tikzpicture}
\graph {
A -> { subgraph I_n [V= {B,C,D}] } -> E
};
\end{tikzpicture}
\end{document}
Det finns många fler alternativ och fördefinierade grafer; se avsnitt 19 i TikZ-manualen.
TikZ - Algoritmisk grafritning
TikZ implementerar flera algoritmer för automatiska graflayouter (kräver LuaLaTeX).
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{graphs,graphdrawing,quotes}
\usegdlibrary{force}
\begin{document}
\begin{tikzpicture}
\graph[spring layout] {
A -> ["1"] B,
A -> {C, D},
C -> {B, D},
};
\end{tikzpicture}
\end{document}
Det finns flera algoritmer och många alternativ att påverka dem. Se del IV i TikZ-manualen för mer information.
Statligt övergångsdiagram över en Markov-kedja
Anta att följande matris är övergångssannolikhetsmatrisen associerad med en Markov-kedja.
0.5 0.2 0.3
P= 0.0 0.1 0.9
0.0 0.0 1.0
För att studera tillståndet i en Markov-kedja, ritas ett tillståndsövergångsdiagram för Markov-kedjan.
\documentclass[12pt,a4paper]{article}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,positioning}
\begin{tikzpicture}[->,>=stealth',shorten >=2pt, line width=3pt,
node distance=2cm, style ={minimum size=20mm}]
\tikzstyle{every node}=[font=\huge]
\node [circle, draw] (a) {1};
\path (a) edge [loop above] (a);
\node [circle, draw] (b) [right=of a] {2};
\path (b) edge [loop above] (b);
\draw[->] (a) -- (b);
\node [circle, draw] (c) [below=of a] {3};
\path (c) edge [loop below] (c);
\draw[->] (a) -- (c);
\draw[->] (b) -- (c);
\end{tikzpicture}