【问题标题】:gnuplot: transform axis of matrix plot with "every"gnuplot:用“每个”变换矩阵图的轴
【发布时间】:2021-12-16 17:29:19
【问题描述】:

我在使用 gnuplot 绘制矩阵时遇到问题。我正在用every 这样的选项绘制一行矩阵

plot inputfile matrix every 1:1:(4+N*M+1):100:(4+N*(M+1)):100 with linespoint

其中 100 是行数。它给了我这个结果: nearly good result

我想让 xrange 从 0 到 360,但是当我使用类似的东西时

plot inputfile matrix using ($1*11.25):2 every 1:1:(4+N*M+1):100:(4+N*(M+1)):100 with linespoint

它不起作用:wrong result

我能用它做什么?

【问题讨论】:

    标签: gnuplot


    【解决方案1】:

    您不提供数据,因此我为以下示例创建了一些数据。 据我了解,您想绘制矩阵的某一行并调整 x 范围。 检查help matrix every

    例如,在plot FILE u 1:2:3 matrix 中,1 是列,2 是行,3 是 (z) 值。 而在plot FILE u 1:3 matrix every ::c:r:c:r 中,c 是列,r 是行(从0 开始计数)。 所以下面的例子绘制了第 4 行,x 范围从 0 调整到 360。

    代码:

    ### plotting a certain row while adjusting the x-range
    reset session
    
    $Data <<EOD
    1  2  3  4  5  6  7
    2  3  4  5  6  7  8
    3  4  5  6  7  8  9
    4  5  6  7  8  9 10
    5  6  7  8  9 10 11
    EOD
    
    set key top left
    plot $Data u ($1*60):3 matrix every :::3::3 w lp pt 7
    ### end of code
    

    结果:

    【讨论】:

    • 谢谢!问题的顺序是usingmatrixevery。正确的顺序就是这样。
    • @vs_nikolaev plot $Data matrix u ($1*60):3 every :::3::3 也应该可以工作。我猜你的错误是using ($1*11.25):2 而不是using ($1*11.25):3
    • 噢,也许吧!我会检查。遗憾的是,我错过了对矩阵的u 1:2:3 的解释
    猜你喜欢
    • 1970-01-01
    • 2016-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多