最近从R切换到Python,我正在探索Pweave作为Sweave的替代品。示例文件(http://mpastell.com/pweave/examples/index.html)看起来很棒,所以我开始构建这些文件。使用命令
pweave -f tex FIR_design_verb.texw
来自终端的生成一个.tex文件,然后可以将其转换为包含数字的pdf文件。
从python解释器(在我的例子中是spyder)中尝试相同的
import pweave
pweave.weave('FIR_design_verb.texw', doctype = "tex")
没有产生相同的结果,数字不存在。生成的tex文件有
\begin{figure}[htpb]
\center
\caption{Test!}
\label{fig:None}
\end{figure}
缺少\ includegraphics {}并且数字文件夹已创建但为空。我在pweave.weave()中缺少一个参数吗?
Ps:作为解决方法,以下代码有效:
import subprocess
cmd = ['pweave', '-f', 'tex', 'pweave_test.texw']
proc = subprocess.Popen(cmd)
proc.communicate()
答案 0 :(得分:1)
我认为问题在于Spyder在Pweave之前导入了'matplotlib',所以数据没有被捕获。如果你运行“普通”python解释器,你的代码应该可以工作。