【问题标题】:How do I send .png plot to stdout in gnuplot?如何将 .png 图发送到 gnuplot 中的标准输出?
【发布时间】:2013-06-17 12:18:18
【问题描述】:

目前,我执行以下操作:

set term png
set output 'file.png'

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

【问题讨论】:

    标签: bash gnuplot


    【解决方案1】:

    如果您确实想将 .png 发送到标准输出,请不要设置输出:

    #!/usr/bin/env gnuplot
    set term png
    plot x
    

    然后运行脚本

    ./plot.plt > mypng.png
    

    我认为 bash 包装器在大多数情况下更有意义,但这也可能有用。

    【讨论】:

    • 另一方面,我认为 bash 包装器对于大多数用途几乎没有用处。这正是我想要的,谢谢!
    • 对于可能遇到与我相同的障碍并在其输出中看到gnuplot> 的其他人:在标准输入上发出命令时不要运行gnuplot -,只需在没有@ 的情况下通过管道传递到gnuplot 987654326@.
    【解决方案2】:

    将您的 gnuplot 脚本放入脚本中并使用 here document:

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

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

    【讨论】:

      猜你喜欢
      • 2015-02-19
      • 1970-01-01
      • 1970-01-01
      • 2019-05-22
      • 2016-11-14
      • 2022-07-08
      • 1970-01-01
      • 1970-01-01
      • 2014-04-10
      相关资源
      最近更新 更多