是否有任何好的图形软件可以用来绘制图表/图形并将它们导出为 pgfplot 代码?
例如,我想创建一个直方图,因此我将直方图图标从菜单拖到“场景”并告诉程序从哪个文件加载数据..等等。
答案1
Matplotlib
如果您使用,matplotlib
则至少有两个选项可用于生成可包含在 LaTeX 文件中的代码:
后端
pgf
:最新版本matplotlib
有一个pgf
后端,因此你可以简单地执行plt.savefig('filename.pgf')
生成一个包含
pgf
代码的文件。matplotlib2tikz
:由 Nico Schlömer 编写的脚本,可生成pgfplots
可包含\input
在 LaTeX 文件中的 TikZ/ 代码。另请参阅下文。
Matlab 导出
matlab2tikz
(也可在MathWorks 文件交换),同样由 Nico Schlömer 撰写,其作用是matplotlib2tikz
。
可以指定绘图的宽度和高度pgfplots
,开发人员matlab2tikz
建议将它们定义为宏,以便可以在主 LaTeX 文件中更改它们。
这使得人们可以快速创建具有pgfplots
一致大小的直方图。
例子
x = randn(10000,1);
hist(x)
matlab2tikz('testfig.tex')
这将testfig.tex
在当前文件夹中生成一个包含tikzpicture
环境的文件axis
。
要指定宽度和高度,例如
matlab2tikz('testfig.tex','width','\figw','height','\figh')
并有如下 LaTeX 代码
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.7}
\usepackage{kantlipsum} % for dummy text
\newlength\figw
\newlength\figh
\setlength\figw{7cm}
\setlength\figh{5cm}
\begin{document}
\kant[1]
\begin{figure}[hb]
\centering
\input{testfig}
\caption{Quite normal}
\end{figure}
\end{document}