首页 > 解决方案 > 如何从 Windows 命令行将倍频程图打印到 .pdf 文件?

问题描述

我试图通过在一行中从 python 写入 windows 命令行来将一些数据传递给八度,但是我收到了一个错误。我在https://octave.org/doc/v4.4.0/Printing-and-Saving-Plots.html找到了一些示例代码,并对其进行了单行变体以满足我的需要:

f=figure('Visible','off');plot([1,2,3,4]);pause(1);print(f,"myplot.pdf","-dpdflatexstandalone");

当我在 octave 本身中运行这一行时,它可以完美运行,并且我可以在 octave 文件夹中找到一个名为 myplot-inc.pdf 的文件(一旦我真正让代码工作,它将在未来的不同位置) . 但是,当我从命令行运行它时

octave --silent --persist --eval f=figure('Visible','off');plot([1,2,3,4]);pause(1);print(f,"myplot.pdf","-dpdflatexstandalone");

它给出了这个错误:

error: 'test_plot' undefined near line 1 column 60

我想最终在没有 --persist 选项的情况下运行它,如果可能的话,甚至可能使用 -W 来防止八度音程打开。现在,我怎样才能让这个代码在命令行中工作,就像它在八度音程中工作一样?

标签: cmdcommand-lineoctave

解决方案


我弄清楚为什么这会很快发生。因为我是从命令行运行的,所以我必须在 'myplot.pdf' 和 '-dpdflatexstandalone' 周围使用单引号,而不是双引号。


推荐阅读