пятница, 21 октября 2011 г.

Графы в Латех

В ЛаТеХ можно рисовать графы, используя пакет XY.
Подробный, но нерусский, мануал XY guide.
Если верить мануалу, то
XY-pic is a package for typesetting graphs and diagrams
using Knuth's TEX typesetting system. XY-pic works with
most of the many formats available; e.g., plain TEX,
LATEX, and AMS-TEX. Several styles of input for various
diagram types are supported; they all share a mnemonic
notation based on the logical composition of visual com-
ponents. This guide concentrates on how to typeset
\matrix-like" diagrams, such as commutative diagrams.


 Подключается этот пакет довольно-таки стандартно:
\usepackage[all]{xy}
Потом надо сделать набросок графа, т.к. этот пакет располагает элементы не совсем автоматически.
Общий синтаксис примерно такой:
\xymatrix{
    A \ar[d]_{arrow 0}&B \ar[l]_{arrow 1}\\
    C \ar[r]_{arrow 2}&D \ar[u]_{arrow 3}
    }
где A,B,C, D - вершины графа,а arrow n -подписи к дугам нашего орграфа. Результат следующий:


При наборе графов могут понадобиться математические символы.

Вот мой рабочий пример, более замудренный.
    \entrymodifiers={++[o][F-]}
    \xymatrix @R+20 @C+20{
    E_1 \ar@/^/[r]^{\lambda q} \ar@/^/[d]^{\mu} 
    &E_3 \ar@/^/[r]^{\lambda q} \ar@/^/[d]^{\mu} \ar@/^/[l]^{\mu}
    &E_5 \ar@/^/[r]^{\lambda q} \ar@/^/[d]^{\mu} \ar@/^/[l]^{\mu}  
    &E_7 \ar@/^/[r]^{\lambda q} \ar@/^/[d]^{\mu} \ar@/^/[l]^{\mu}  
    &E_9  \ar@/^/[d]^{\mu} \ar@/^/[l]^{\mu}
    \\
    E_0  \ar@/^/[u]^{\lambda (1-q)} \ar@/^/[r]^{\lambda q}  
    &E_2 \ar@/^/[u]^{\lambda (1-q)} \ar@/^/[r]^{\lambda q} \ar@/^/[l]^{\mu}
    &E_4 \ar@/^/[u]^{\lambda (1-q)} \ar@/^/[r]^{\lambda q} \ar@/^/[l]^{\mu}  
    &E_6 \ar@/^/[u]^{\lambda (1-q)} \ar@/^/[r]^{\lambda q} \ar@/^/[l]^{\mu}
    &E_8 \ar@/^/[u]^{\lambda (1-q)} \ar@/^/[l]^{\mu}
    }
Чтобы добавить заголовок и ссылку на граф, можно использовать окружение figure:
\begin{figure}[H]
.....код графа....
\caption{Граф.}
\label{graph}
\end{figure}
После этого на картинку можно будет ссылаться в тексте.

Комментариев нет:

Отправить комментарий