Я новичок в построении графиков функций с помощью TeX - до сих пор я решал эти проблемы, включая .eps картинки. Теперь я делаю все лучше и красивее. Я начал использовать пакеты Tikz вместе с официальными руководствами.
Моя проблема сейчас в функциях построения графиков, не включенных в "язык" Tikz (например, $x^{4/7}$ или $x*\sin(x)$). Я последовал советам по настройке Gnuplot и разрешил использование внешних программ.
Моя система: Windows Vista + TeXstudio + Miktex 2.9, компиляция с помощью Pdflatex.
Я установил Gnuplot 5.0 (который я никогда раньше не использовал) и изменил текст
"C:\Program Files\MiKTeX 2.9\miktex\bin\pdflatex.exe" -synctex=1-interaction=nonstopmode %.tex
в настройках TeXstudio (путь: Параметры->Настроить TeXstudio->Команды->Pdflatex)
"C:\Program Files\MiKTeX 2.9\miktex\bin\pdflatex.exe" -synctex=1--enable-write18-interaction=nonstopmode %.tex
по некоторым советам. Однако мой минимальный пример все еще не работает как следует...
\documentclass[a4paper]{article}
\usepackage{pgf,tikz}
\usepackage{mathrsfs}
\usetikzlibrary{arrows}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}[domain=0:4]
\draw[very thin,color=gray] (-0.1,-1.1) grid (3.9,3.9);
\draw[->] (-0.2,0) -- (4.2,0) node[right] {$x$};
\draw[->] (0,-1.2) -- (0,4.2) node[above] {$f(x)$};
\draw plot[id=sin] function{sin(x)} node[right] {$f(x) = \sin x$};
\end{tikzpicture}
\end{document}
Компиляция проходит без предупреждений и ошибок, однако в выходном .pdf-файле отсутствует график синусоидальной функции (я сделал принтскрин картинки из .pdf-файла - возможности прикрепить .pdf-файлы не вижу).
Мне нужна срочная помощь. Спасибо большое!
решение1
Я думаю, что вы немного запутались в возможностях TikZ и, конечно, в пакете pgfplots
. Первая проблема в том, что вам нужно разрешить pdflatex
или какой-либо другой движок, который вы используете, чтобы получить доступ к системным командам. Например, я использую TeXnicCenter, и мои параметры командной строки настроены как
-synctex=-1 -max-print-line=120 -interaction=nonstopmode "%wm" -shell-escape
Последний бит позволяет системные вызовы (и "%wm"
бит эквивалентен вашему %.tex
). И прямая компиляция вашего кода дает мне
но у меня нет TeXStudio, поэтому я не смог это проверить. Однако идея по сути та же самая.
В качестве альтернативы вы можете использовать TikZ или pgfplots для построения графиков функций, если ваша функция не является по-настоящему экзотической или сложной.
Вот два примера:
В TikZ вы заменяете одну строку вашего кода на
\draw plot (\x,{sin(\x r)}) node[right] {$f(x) = \sin x$};
И pgfplots
с настройками по умолчанию
\documentclass[a4paper]{article}
\usepackage{pgfplots,mathrsfs}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis lines=middle,xmax=6,ymin=-1,ymax=1]
\addplot[domain=0:4] {sin(deg(x))} node[right]{$f(x)=\sin(x)$};
\end{axis}
\end{tikzpicture}
\end{document}