【发布时间】:2020-12-12 17:21:44
【问题描述】:
我正在尝试以八度音阶使用命令plot(x,y,'rx')。当我使用它时,会打开一个图形窗口,但我没有看到任何情节。它只是一个空白的空白区域。但是,如果我只是使用命令plot(x,y) 会打开一个带有绘图的图形窗口。我认为这与 Octave 不使用 gnuplot 工具包有关,我应该使用命令 graphics_toolkit('gnuplot') 让 Octave 使用 gnuplot。这就是问题所在。
首先 Octave 说“gnuplot 工具包不可用”。我很清楚我拥有它。我以前用过它(不是用 Octave)。在 Octave 说工具包不可用后,我什至删除了 gnuplot 并再次安装了它。
在 google 上搜索一些答案,我意识到我应该在 octaverc 文件的末尾添加行 graphics_toolkit('gnuplot')。我不知道在哪里可以找到文件。现在,有很多答案说 octaverc 文件在 ~/.octaverc 中。但是 ~/ 目录中没有这样的文件。其他一些答案建议我们必须在这种情况下创建文件。在这一点上,我不知道我必须如何“创建”一个 .octaverc 文件。所以我从/snap/octave/30/share/octave/5.2.0/site/m/startup复制它并粘贴到 ~/,右键单击它,以管理员身份编辑,在文件末尾添加该行并保存修改后的.octaverc文件。 Octave 仍然说“gnuplot 工具包不可用”。
(我尝试在 /snap/octave/30/share/octave/5.2.0/site/m/startup 中编辑 .octaverc 文件,但结果是只读文件。无论如何我都无法修改它我试过了。即使作为root用户我也无法修改文件)
我该怎么办?
【问题讨论】:
-
这里可能会发生一些事情。首先,可能是在您第一次编译 octave 时未检测到 gnuplot,同样,octave 现在无法知道您正在运行哪个 gnuplot 二进制文件。其次,可能是您的 gnuplot 安装不在系统路径上,因此无法找到其二进制文件(或者同样,您运行 octave 的方式不会导出该路径以供 octave 查看)。
gnuplot_binary八度的输出是什么? -
还要检查
available_graphics_toolkits()输出 -
我想知道问题是否在于您正在使用 snap 而不是系统包管理器。你为什么不直接
apt install octave?我猜 snap 会隔离程序,因此它的 octave installatino 将无法看到 gnuplot 程序。 -
@carandraug 我就是这么做的:从 snap 安装,因为 apt 提供 Octave 4.4 和 snap 5.2。我并不特别在意它是 snap 还是 apt:知道如何安装 5.2 版吗? :)
-
@TomislavNakic-Alfirevic 我不知道如何快速修复它。如果您想要比 apt 提供的版本更新的版本,请尝试从源代码构建。你在linux上,这很简单。见wiki.octave.org/Octave_for_Debian_systems