Поиск…


TikZ - Ручная компоновка

Пакет TikZ очень хорошо подходит для рисования графиков.

Это небольшой пример (требуется 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}

введите описание изображения здесь

Вы можете создавать произвольно сложные графы; но будьте осторожны с длинным кодом. Напомним, что есть \foreach и обратите внимание на все параметры позиционирования и стилизации (см. Руководство TikZ, раздел 13-17).

TikZ - характеристики графика

TikZ обеспечивает синтаксис, подобный DOT, который вы можете использовать для значительного увеличения кода рисования графа.

\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}

введите описание изображения здесь

Как вы можете видеть, вы торгуете мелкозернистым управлением для упрощения синтаксиса. Библиотека graphs действительно сияет, когда вы указываете более сложные графики:

\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}

введите описание изображения здесь

Существует еще много опций и заранее определенных графиков; см. раздел 19 руководства TikZ.

TikZ - Алгоритмический графический чертеж

TikZ реализует несколько алгоритмов для автоматического построения графиков (требуется 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}

введите описание изображения здесь

Существует несколько алгоритмов и множество вариантов влияния на них. Подробнее см. В части IV руководства TikZ.

Переходная диаграмма состояния Марковской цепи

Предположим, что следующая матрица - матрица вероятности перехода, связанная с цепью Маркова.

    0.5   0.2  0.3
P=  0.0   0.1  0.9
    0.0   0.0  1.0

Для изучения природы состояний марковской цепочки рисуется диаграмма перехода состояний цепи Маркова.

\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}

введите описание изображения здесь



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow