如何在gnuplot中将.png图形发送到标准输出?

11

目前,我做的类似于以下内容:

set term png
set output 'file.png'

但是在脚本中硬编码文件名是相当不灵活的。有没有一种方法可以告诉gnuplot将图像文件输出到stdout,这样我就可以将它的输出重定向到需要的地方?

2个回答

14
如果你确实想要将你的 .png 发送到标准输出(stdout),那么就不要设置输出(output):
#!/usr/bin/env gnuplot
set term png
plot x

然后运行该脚本

./plot.plt > mypng.png

我认为对于大多数目的来说,bash包装器更有意义,但这也有潜在的用处。


我则认为对于大多数情况而言,Bash包装器几乎毫无用处。这正是我在寻找的,谢谢! - Rogach
2
对于其他可能遇到与我相同问题的人,如果在输出中看到 gnuplot> ,请不要在标准输入上运行 gnuplot -,只需将命令管道传输到 gnuplot 即可。 - Jon Gjengset

1

将您的gnuplot脚本放入一个脚本中,并使用此处文档

#!/bin/bash
gnuplot << EOF
set term png
set output "$1.png"
plot "$1.dat"
EOF

现在,通过指定输出文件的前缀和数据作为参数来调用脚本 plot.shbash plot.sh file

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接