将图形从 gnuplot 插入到 latex

将图形从 gnuplot 插入到 latex

如何在 LaTeX 中插入用 GNUplot 绘制的高质量图形。我正在尝试使用以下方法:

  1. 在 gnuplot 中绘制图形
  2. 将其保存为 SVG 文件
  3. 将 svg 转换为 pdf
  4. 将 pdf 插入到 latex 文件中

但是,我无法在 SVG 文件中包含希腊字母?有人能帮我吗?

答案1

您是否需要在阶段对图像进行更改?如果不需要,您可以按照说明SVG 将图表导出为PDF这里。但是,您可能更喜欢使用GNUplotepslatex输出模式并以这种方式输入图形,这将使您更好地控制图形的文本元素,因为 是由 控制的LaTeX。可以找到执行此操作的说明这里

答案2

假设您确实想要 svg:在较新版本的 inkscape 中,您可以单独导出文本。也就是说,您将获得一个仅包含图像信息的 .pdf 文件和一个包含用于覆盖文本的 latex 命令的 .pdf-tex。那么最大的优势就是您可以完全访问 latex 功能。例如,您可以在 gnuplot 中说

set xlable '$\sum\xi^\Xi$'
set term svg ....; set out 'mysvg.svg'
#plot something

然后你去 inkscape 或者使用控制台

inkscape mysvg.svg --export-pdf mypdf.pdf --export-latex 

它还创建了 mypdf.pdf_tex 然后说

\begin{figure}
\input{mypdf.pdf_tex}
\caption{Stackexchange is really helpful}
\end{figure}

在你的乳胶文档中。

这种方法的一个问题是,您可能会遇到需要图形自成一体的情况(例如,有些期刊就很荒谬)。为此,我编写了一个小型 bash 脚本,该脚本会设置一个包含图形的新 .tex 文档,然后对其进行编译,以便生成带有文本的 pdf。(有点像旧的 fig2pdf,但带有 svg s)

答案3

正如其他人指出的那样,如果您需要在绘图后进行更改,那么 SVG 是一个可接受的解决方案。如果不是,那么 PDF,或者更好的是:gnuplot 的胶乳终端将是最好的。请参阅这里,如果您也可以看看 P. Janert 所著的《Gnuplot in Action》一书中对此的解释。

相关内容