我想使用 gnuplot 从数据文件中绘制图形,比如 foo.data。目前,我在命令文件中硬编码了数据文件名,比如 foo.plt,然后运行命令 gnuplot foo.plg
来绘制数据。但是,我想将数据文件名作为命令参数传递,例如运行命令 gnuplot foo.plg foo.data
。如何解析 gnuplot 脚本文件中的命令行参数?谢谢。
最佳答案
可以通过开关-e
输入变量
$ gnuplot -e "filename='foo.data'" foo.plg
在 foo.plg 中你可以使用那个变量
$ cat foo.plg
plot filename
pause -1
要使“foo.plg”更通用一些,请使用条件:
if (!exists("filename")) filename='default.dat'
plot filename
pause -1
请注意 -e
必须在文件名之前,否则文件会在 -e
语句之前运行。特别是,使用 ./foo.plg -e ...
CLI 参数运行 shebang gnuplot #!/usr/bin/env gnuplot
将忽略使用提供的参数。
关于command-line - 如何将命令行参数传递给 gnuplot?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44639225/