【问题标题】:Octave, how to save a plot graph?Octave,如何保存绘图图?
【发布时间】: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

标签: image plot save octave


【解决方案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 的跟踪器上报告您的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-31
  • 1970-01-01
  • 1970-01-01
  • 2019-09-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多