Octave,如何保存绘图图?

Posted

技术标签:

【中文标题】Octave,如何保存绘图图?【英文标题】:Octave, how to save a plot graph? 【发布时间】:2014-05-21 09:55:52 【问题描述】:

我需要保存一个情节。这是我的代码,我不知道为什么它不起作用。

hold on;
plot(x1, y2)
plot(x1, y2)
print -djpg image.jpg

屏幕上输出的绘图是正确的,但文件中的输出不同:它只保存了一个没有我的点的空绘图图像。

这是我在文件中的输出:

【问题讨论】:

确保您使用的是最新的 GNU Octave 版本,即 3.8。我记得以前和其他用户看到过这个问题。 什么操作系统?如果您将扩展名更改为 *.png 或 *.pdf 会怎样?您是否尝试过替代 print (FILENAME, OPTIONS) 语法? SO:“Ubuntu 13.10”。我尝试保存在各种扩展文件(png、pdf 等)中,但结果始终相同。 如果您尝试使用不同的图形工具包会怎样?重新启动解释器并在绘图命令之前键入graphics_toolkit fltkgraphics_toolkit gnuplot 【参考方案1】:

我刚刚在最新的 Octave (3.8.1) 上遇到了同样的问题。这个问题来自 GhostScript,而不是 Octave。字体管理有问题。

为确保,如果输出此错误(以及更多信息),请在尝试打印后检查控制台:

GPL Ghostscript 8.63: Unrecoverable error, exit code 1

如果是这样,那么试试这个:

set (0, "defaultaxesfontname", "Helvetica") % this is the line to add BEFORE plotting
hold on;
plot(x1, y2)
plot(x1, y2)
print -djpg image.jpg

这将通过设置 GhostScript 可以毫无问题地处理的字体来解决问题。请注意,如果您已经绘制了图形,则必须在设置 defaultaxesfontname 后关闭它并重新绘制它。

来源:https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=710272

【讨论】:

使用这种方法我得到一个黑屏打印。但是至少我可以直接将它保存为图像。打印仍然不起作用。 检查您的 Ghostscript 版本是否与 Octave 兼容,您可能需要更新/使用旧版本才能正常打印。您还可以在 Octave 的跟踪器上报告您的问题。

以上是关于Octave,如何保存绘图图?的主要内容,如果未能解决你的问题,请参考以下文章

通过将数字分组到一个范围内在 matlab / octave 中绘图

Octave Tutorial(《Machine Learning》)之第四课《绘图数据》

如何设置绘图窗口的窗口大小?

在 Octave 中从 .dat 文件绘图

关于mac下octave的绘图问题

关于mac下octave的绘图问题