Как нарисовать взвешенный график на латексе?

Мне нужно нарисовать взвешенный граф с помощью LaTeX, но я не знаю, как поставить числа по краям. Цифры подобны стоимости каждого ребра. График можно нарисовать так:

\begin{tikzpicture}
\draw 
(1, 1) node[circle, black, draw](m){M}
(1, 3) node[circle, black, draw](i){I}
(1, 5) node[circle, black, draw](e){E}
(1, 7) node[circle, black, draw](a){A}
(3, 1) node[circle, black, draw](n){N}
(3, 3) node[circle, black, draw](j){J}
(3, 5) node[circle, black, draw](f){F}
(3, 7) node[circle, black, draw](b){B}
(5, 1) node[circle, black, draw](o){O}
(5, 3) node[circle, black, draw](k){K}
(5, 5) node[circle, black, draw](g){G}
(5, 7) node[circle, black, draw](c){C}
(7, 1) node[circle, black, draw](p){P}
(7, 3) node[circle, black, draw](l){L}
(7, 5) node[circle, black, draw](h){H}
(7, 7) node[circle, black, draw](d){D};

\draw[-] (a) -- (b);
\draw[-] (b) -- (c);
\draw[-] (c) -- (d);
\draw[-] (f) -- (g);
\draw[-] (g) -- (h);
\draw[-] (i) -- (j);
\draw[-] (j) -- (k);
\draw[-] (k) -- (l);
\draw[-] (m) -- (n);
\draw[-] (n) -- (o);
\draw[-] (o) -- (p);
\draw[-] (a) -- (e);
\draw[-] (b) -- (f);
\draw[-] (c) -- (g);
\draw[-] (d) -- (h);
\draw[-] (e) -- (i);
\draw[-] (f) -- (j);
\draw[-] (g) -- (k);
\draw[-] (i) -- (m);
\draw[-] (j) -- (n);
\draw[-] (k) -- (o);
\draw[-] (l) -- (p);

\end{tikzpicture}

person Diego    schedule 30.08.2018    source источник


Ответы (1)


Вы можете проверить пример Tikz для многих примеров аннотированных графиков (в частности, есть более одного способа разместить краевые метки).

Быстрый способ добавить метку края - добавить узел на свой путь:

\draw[-] (a) -- node[above] {1} (b);

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

\begin{tikzpicture}
\draw 
(1, 1) node[circle, black, draw](m){M}
(1, 3) node[circle, black, draw](i){I}
(1, 5) node[circle, black, draw](e){E}
(1, 7) node[circle, black, draw](a){A}
(3, 1) node[circle, black, draw](n){N}
(3, 3) node[circle, black, draw](j){J}
(3, 5) node[circle, black, draw](f){F}
(3, 7) node[circle, black, draw](b){B}
(5, 1) node[circle, black, draw](o){O}
(5, 3) node[circle, black, draw](k){K}
(5, 5) node[circle, black, draw](g){G}
(5, 7) node[circle, black, draw](c){C}
(7, 1) node[circle, black, draw](p){P}
(7, 3) node[circle, black, draw](l){L}
(7, 5) node[circle, black, draw](h){H}
(7, 7) node[circle, black, draw](d){D};

\draw[-] (a) -- node[above] {1} (b);
\draw[-] (b) -- node[below] {2} (c);
\draw[-] (c) -- (d);
\draw[-] (f) -- (g);
\draw[-] (g) -- (h);
\draw[-] (i) -- (j);
\draw[-] (j) -- (k);
\draw[-] (k) -- (l);
\draw[-] (m) -- (n);
\draw[-] (n) -- (o);
\draw[-] (o) -- (p);
\draw[-] (a) -- (e);
\draw[-] (b) -- (f);
\draw[-] (c) -- (g);
\draw[-] (d) -- (h);
\draw[-] (e) -- (i);
\draw[-] (f) -- (j);
\draw[-] (g) -- (k);
\draw[-] (i) -- (m);
\draw[-] (j) -- (n);
\draw[-] (k) -- (o);
\draw[-] (l) -- (p);

\end{tikzpicture}
person pchaigno    schedule 30.08.2018