2016-02-22 5 views
0

Я просмотрел многочисленные сообщения по этой теме и еще не нашел ответа. Я обычно довольно устойчив к этим проблемам, но должен признать, что победил на этом. Я не могу превратить файл .dat в достойный латексный код. Мой Gnuplot входной код выглядитНевозможно построить с использованием epslatex gnuplot

plot "file.dat" using 1:6 with lines 
set terminal epslatex 
set output "output.tex" 
set label "$\alpha$" 
set out 

Это производит .tex и .eps файл по мере необходимости. Теперь я компилирую plot.tex файл с pdflatex и следующий код:

\documentclass{article} 
\usepackage{graphics} 
\usepackage{epstopdf} 

\begin{document} 
\include{output.tex} 
\end{document} 

Когда я открываю plot.pdf нет ничего там. Также нет ошибок в компиляции pdflatex. У файла .dat определенно есть данные, и я считаю, что проблема связана с кодом gunplot; Я не могу построить файл .dat внутри терминала epslatex, а соответствующий .eps-файл пуст. Если бы кто-нибудь мог сказать мне, как это сделать, это было бы здорово. Я могу сохранить данные довольно легко, как файл .eps, но я действительно хочу, латексные xlabels т.д.

Приветствия

Jack

ответ

1

Несколько вопросов:

  • Когда вы подаете GNUPLOT команда plot, он делает график тогда и там, тем не менее, он был настроен. Вы делаете это в самом начале своего скрипта, прежде чем настраивать что-либо вообще. Определите тип терминала, заголовки, диапазоны и т. Д. В начале, а затем введите команду plot в конец. Это может показаться запутанным, но сценарий gnuplot - это просто сценарий. Он выполняет одну строку за другой. Это позволяет вам изменять настройки после команды plot, а затем делать еще один файл plot (т. Е. В другом выходном файле) в другом месте с немного разными настройками.

  • Инструкция set out не подходит для set output (... ни к чему). Я не уверен, почему вы хотели бы настроить вывод на результат после того, как вы только что сделали set output "output.tex".

  • Вы, вероятно, хотите или оси название метки от «альфа» вместо метки из «альфа». Вы устанавливаете заголовок set title. Также есть x - и y -наклейки, которые вы можете установить с помощью set xlabel и set ylabel. gnuplot имеет «ярлыки», но это имеет определенное техническое значение (текст помещается в определенную координату).

  • Возможно, вы намеревались маркировать набор данных «α» вместо заголовка «α». Затем добавьте title "$\\alpha$" в строку plot. gnuplot выдумает название, если вы не укажете его, или не используйте ключевое слово notitle.

  • Вам нужно избегать обратной косой черты (\\ вместо \) в строках в gnuplot, если вы хотите отдать ее LaTeX. Используйте $\\alpha$ вместо $\alpha$.

В общем, попробовать что-то вроде этого:

set terminal epslatex 
set output "output.tex" 
set title "Impressive Results of $\\alpha$" 
plot "file.dat" with lines title "$\\alpha$" 

Кроме того, у меня были проблемы с \include{output.tex} в вашем LaTeX документе. Вам не нужно указывать расширение файла. Я привык использовать пакет graphicx, но каждому свой. Так что это сработало для меня:

\documentclass{article} 
\usepackage[pdftex]{graphicx} 

\begin{document} 
\include{output} 
\end{document} 

Надеюсь, это поможет вам начать с чего-то работающего.

+1

'\ include {output}' прав. Добавление расширения файла сбивает LaTeX. – vaettchen

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

  • Нет связанных вопросов^_^