2010-06-06 9 views
66

Прежде всего, позвольте мне сказать, что я использую LyX, хотя у меня нет проблем с использованием ERT.Как нарисовать график в LaTeX?

Во-вторых, что является самым простым способом нарисовать простой граф, подобный этому в Latex? alt text

Я видел несколько документов с графиками, и я видел несколько примеров, но я не мог понять, как просто нарисовать простой график - какие пакеты мне нужны и т. Д.?

+0

https://tex.stackexchange.com/questions/57152/how-to-draw-graphs- in-latex – chb

ответ

94

TikZ может это сделать.

Быстрый демо:

\documentclass{article} 

\usepackage{tikz} 

\begin{document} 

\begin{tikzpicture} 
    [scale=.8,auto=left,every node/.style={circle,fill=blue!20}] 
    \node (n6) at (1,10) {6}; 
    \node (n4) at (4,8) {4}; 
    \node (n5) at (8,9) {5}; 
    \node (n1) at (11,8) {1}; 
    \node (n2) at (9,6) {2}; 
    \node (n3) at (5,5) {3}; 

    \foreach \from/\to in {n6/n4,n4/n5,n5/n1,n1/n2,n2/n5,n2/n3,n3/n4} 
    \draw (\from) -- (\to); 

\end{tikzpicture} 

\end{document} 

производит:

enter image description here

Другие примеры @http://www.texample.net/tikz/examples/tag/graphs/

Больше информации о TikZ: http://sourceforge.net/projects/pgf/, где я думаю, руководство по установке также будет присутствовать ,

+1

В частности, особенно полезен пакет [tkz-berge package] (http://www.texample.net/tikz/examples/tkz-berge/). –

+0

@Alex, отличная ссылка! (хотя он находится в нижней части ссылки «Дополнительные примеры», которую я уже разместил :)) –

+0

вернувшись к этому вопросу - нужно ли указывать координаты? Может ли он как-то справиться с этим? –

0

По моему опыту, я всегда использую внешнюю программу для генерации графа (математика, gnuplot, matlab и т. Д.) И экспортирует график в формате pdf или eps. Затем я включаю его в документ с includegraphics.

2

Возможно использование tikz.

+0

Как вы можете помочь мне установить этот пакет? –

+0

@Amir Перейдите на страницу загрузки sourceforge, чтобы получить пакет, затем прочитайте инструкции - они довольно прямолинейны. – zdav

+3

@Amir: Как установить пакет, зависит от вашей ОС. В Ubuntu 'tikz' предоставляется пакетом' pgf'. Так что все, что нужно сделать, это 'sudo apt-get install pgf'. – unutbu

2

Помимо предложения (отличного) использования TikZ, вы можете использовать gastex. Я использовал это до появления TikZ, и он тоже выполнял свою работу.

2

Я использовал graphviz (http://graphviz.org/Gallery.php) вместе с LaTeX, используя команду dot, чтобы генерировать графики в PDF и includegraphics, чтобы включить их.

Если Graphviz производит то, что вы стремитесь, это может быть лучшим способом интеграции: dot2tex: http://www.fauskes.net/code/dot2tex

+1

dot2tex хороший, и пакет dot2texi LaTeX очень хорош. Он позволяет вам определить ваш график внутри вашего .tex-файла с использованием точечного формата, а затем аннотировать его с помощью TikZ (см. Хороший пример в конце http: //www.fauskes.нетто/код/​​dot2tex/документация/#-dot2texi-латекс-пакет). – Mark

Смежные вопросы