【问题标题】:Gnuplot: Plot numbered files with loopGnuplot:用循环绘制编号文件
【发布时间】:2018-10-11 13:36:46
【问题描述】:

我想绘制名为“0.txt”、“1.txt”、“2.txt”等的数据文件。

我的情节脚本如下所示:

为 [i=0:9] 做{

设置 xrange [-0.5:7.5]

设置 yrange [-0.5:7.5]

设置术语 pngcairo 大小 1280,720

设置输出.i.".png"

用图像绘制 .i.".txt" 矩阵

设置术语 x11

}

在哪里 .i。是i的占位符,从0开始增加到9。错误信息是:“line 8: Invalid expression”

你看到错误还是有想法?

【问题讨论】:

    标签: gnuplot


    【解决方案1】:

    使用sprintf 格式化您的字符串:

    set xrange [-0.5:7.5]
    set yrange [-0.5:7.5]
    set term pngcairo size 1280,720
    
    do for [i=0:9] {
        set output sprintf("%d.png", i)
        plot sprintf("%d.txt", i) matrix with image
    }
    

    【讨论】:

      【解决方案2】:

      首先,你应该删除set term x11,你只需要设置你的终端一次。 其次,将所有常量参数移到循环之外——它们根本不会改变。

      我使用类似的 gnuplot 文件,但是,我使用另一个提供一组输入值的外部脚本。我对文件名有几乎相同的命令,而且效果很好。由于某种原因,您的版本不像这样,所以我对其进行了一些修改:

      set term pngcairo size 1280,720
      set xrange [-0.5:7.5]
      set yrange [-0.5:7.5]
      do for [i=0:9]{
        set output "".i.".png"
        plot "".i.".txt" matrix with image
      }
      

      我已经对其进行了测试(gnuplot 5.2 patchlevel 4),它可以正确生成一些所需的输出。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多