当在交互式shell会话中运行Octave时,我知道可以显示字符模式/ ASCII图表,如此处所讨论的:Character-mode (shell) plots with Matlab / Octave?
我的问题是,当我的Octave脚本以非交互方式运行时,我希望有这种输出。也就是说,我想运行类似以下命令的东西:
并输出类似以下内容:
如果我在ssh会话中打开octave,然后在octave终端中调用我的脚本,就会得到这样的输出:
但是我真正想做的是从其他Bash脚本中调用testplot.m,例如:
#!/usr/bin/octave -qf
plot(sin(0:7))
并输出类似以下内容:
1 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> + ---+ + + + + >
> +--- | >
> | | >
> | | >
0.5 >+ | | +>
> | | | >
> | | | >
> | | | >
>| + | >
0 >+ | | +>
> | | >
> | | >
> | + >
> | | >
> | | >
-0.5 >+ | | +>
> | | >
> +--- | >
> -- | >
> + + + + -+| + >
-1 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
1 2 3 4 5 6 7 8
如果我在ssh会话中打开octave,然后在octave终端中调用我的脚本,就会得到这样的输出:
octave:1> testplot.m
但是我真正想做的是从其他Bash脚本中调用testplot.m,例如:
$ ./testplot.m
或者
$ octave testplot.m
这两种方式都不会产生任何绘图输出。
我注意到交互式会话输出似乎会根据我的终端窗口的大小自动缩放,所以从某种意义上说,它取决于会话。
谢谢你的帮助!
澄清一下 - 我知道如何创建关闭可见性的图形,但我正在尝试避免单独下载图形文件。
我还发现了这个主题:命令行Unix基于ASCII的图表/绘图工具,但 eplot 似乎给了我错误(可能是用户错误、坏数据格式等,但我不确定),而且我更愿意让事情保持在Octave中 - 只要我处于交互会话中,Octave已经完全符合我的要求!
drawnow
。 - Andydrawnow
或添加pause
都可以解决我的问题。谢谢! - terikin