我有一个每隔几秒更新一次的数据文件a.dat
。我希望每隔几秒就在gnuplot中绘制一次以查看更改
plot "a.dat"
最简单的方法是什么?感谢。
答案 0 :(得分:5)
使用循环制作脚本:
while (1) {
plot "a.dat"
pause 1 # waiting time in seconds
}
使用gnuplot script.gp
执行。
出于代码结构和调试的目的,您可能更喜欢以下替代方法:
plot "a.dat"
while (1) {
replot
pause 1
}
这样做的好处是,您不必在循环中放置复杂的plot
命令,并且不会出现错误消息中的plot命令的错误行号(至少在某些版本的Gnuplot中发生) )。
最后,如果你的Gnuplot太旧而它还不支持循环,那么还有其他方法:
plot "a.dat"
pause 1
reread
使用reread
使脚本解释器再次跳转到文件的开头。
答案 1 :(得分:1)
如果在命令行中使用绘图命令(选项 gnuplot
)而不是命令脚本文件调用 -e
,则只有版本
gnuplot -e "...plot command(s)...; while (1) { pause 1; replot; }"
在我的情况下工作,另一个版本
gnuplot -e "...plot command(s)...; pause 1; reread;"
没有。
在 Windows 10 上,我必须终止任务管理器中的 gnuplot
任务,因为如果我使用关闭窗口按钮关闭 gnuplot
窗口,该窗口会在最晚一秒后再次打开.有没有人知道如何以更舒适的方式处理这个问题?