Octave: 看图

Octave: View a figure

我将以下代码保存为脚本。

 % demonstration of hold
 clf;
 t = linspace (0, 2*pi, 100);
 plot (t, sin (t));
 hold on;
 plot (t, cos (t));
 title ({"hold on", "2 plots shown on same graph"});
 hold off;

当我在 Octave 中执行脚本时,Octave 的查看器会显示图形。 但是,当我从命令行 (Ubuntu) 执行脚本时,查看器会非常快速地单独打开和关闭而不会显示任何图形。

我不知道这个问题是否与 Octave 或 Ubuntu 有关。如果问题太幼稚,我深表歉意。

当运行和命令行中的Octave脚本时,Octave启动并执行它,当脚本结束时,Octave也终止。这就是为什么您会看到图 windows 创建并立即销毁的原因。不再有程序 运行 显示这些数字 windows。

如果您在脚本末尾添加 pause 语句,Octave 将在该语句处等待,直到您按下一个键,然后继续。因此,在您按下该键后,脚本结束并且 Octave 终止。但在等待期间,windows 的数字将可见。

您可以使用 waitfor 来防止 Octave 在图形关闭之前终止。首先你应该得到图形的图形句柄。包括 clf 、 plot ……在内的一些函数可以 return 图形句柄。然后使用 waitfor 并将句柄作为其参数。

h = plot(1:10);
waitfor(h);

h = clf;
plot(1:10);
waitfor(h);