用gnuplot逐行绘制

安德里亚

我有一个.txt文件,其中两组数据在同一列中,但被一些字符分开,这里是一个示例:

#第一组数据
#时间# 速度
1 0.3
2 0.5
3 0.8
4 1.3

#第二组数据
#时间# 速度
1 0.7
2 0.9
3 1.8
4 2.3

所以我想将这两组数据绘制为两条不同的曲线,而且我也不知道每组数据有多少行(或者至少这个数字可以改变),所以我不能使用每条命令。寻找一些gnuplot命令,而不是bash命令)。谢谢

西奥日

正如您已经提到的every那样,由于数据集的长度是可变的,因此在这里不起作用编辑:是的,请参见下面的编辑)如果您有两个空行来分隔数据集,则可以使用index,请选中help index但是,如果您有一个空行,pseudocolumn -1将会有所帮助。检查help pseudocolumns然后,您可以使用三元运算符check定义一个过滤器help ternary

码:

### plotting variable datasets
reset session

$Data <<EOD
#First set of data
#Time        #Velocity
1              0.3
2              0.5
3              0.8
4              1.3

#Second set of data
#Time        #Velocity
1              0.7
2              0.9
3              1.8

#Third set of data
#Time        #Velocity
1              0.9
2              1.4
3              2.6
4              3.6
5              4.8
EOD

myFilter(col,i) = column(-1)==i-1 ? column(col) : NaN

set key top left
plot for [i=1:3] $Data u 1:(myFilter(2,i)) w lp pt 7 title sprintf("Set %d",i)
### end of code

编辑:(如@binzo指出的)

实际上,我使它变得太复杂了。不使用过滤器也可以做到以下简单操作(在其他情况下也可以使用过滤器)。注意,块从0开始编号。

plot for [i=1:3] $Data u 1:2 every :::i-1::i-1 w lp pt 7 title sprintf("Set  %d",i)

结果:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

用Gnuplot绘制矢量

来自分类Dev

用gnuplot绘制接收功率

来自分类Dev

用gnuplot绘制过程树

来自分类Dev

用gnuplot绘制.gnu文件

来自分类Dev

用gnuplot绘制球体链

来自分类Dev

用gnuplot绘制单个值?

来自分类Dev

用Gnuplot绘制红外光谱

来自分类Dev

用gnuplot绘制时间数据

来自分类Dev

用gnuplot在球上绘制点

来自分类Dev

用gnuplot保存在文件中的点绘制不同的线

来自分类Dev

gnuplot:函数可以用向量绘制吗?

来自分类Dev

用gnuplot绘制单列二进制文件

来自分类Dev

用gnuplot保存在文件中的点绘制不同的线

来自分类Dev

如何用gnuplot用“ <text> <datetime>”这样的线绘制数据?

来自分类Dev

用gnuplot绘制单列二进制文件

来自分类Dev

用误差线绘制数据并用 gnuplot 对它们进行排序

来自分类Dev

直接用 gnuplot 绘制其他程序的标准输出

来自分类Dev

Gnuplot用图像绘制二维矩阵,想要为每个单元格绘制边框

来自分类Dev

Gnuplot不会绘制负值

来自分类Dev

在gnuplot中绘制

来自分类Dev

用gnuplot在圆柱坐标系中绘制方程式

来自分类Dev

用显示一些标签的调色板绘制gnuplot

来自分类Dev

Gnuplot:如何在多个数据块上用连续线绘制?

来自分类Dev

用gnuplot在圆柱坐标系中绘制方程式

来自分类Dev

用asyncio逐行读取文件

来自分类Dev

用特定字符逐行计数

来自分类Dev

用jquery逐行生成表?

来自分类Dev

使用R逐行绘制条形图

来自分类Dev

计数gnuplot中的绘制点数