Colors 使用gnuplot绘制一条具有不同连续颜色的单一曲线

Colors 使用gnuplot绘制一条具有不同连续颜色的单一曲线,colors,gnuplot,line,Colors,Gnuplot,Line,使用gnuplot,我想绘制一个数据集,信号与时间(比如色谱图),在曲线的选定区域(比如峰值)使用不同的颜色,但我不确定这是否可行。 到目前为止,我尝试的是: plot [2:4.6] [0:100] 'data.csv' using 1:2 with lines lt 1,\ [4.6:4.7] [0:100] 'data.csv' using 1:2 with lines lt 2,\ [4.7:6] [0:100] 'data.csv' using 1:2 with lines lt 3

使用gnuplot,我想绘制一个数据集,信号与时间(比如色谱图),在曲线的选定区域(比如峰值)使用不同的颜色,但我不确定这是否可行。 到目前为止,我尝试的是:

plot [2:4.6] [0:100] 'data.csv' using 1:2 with lines lt 1,\
[4.6:4.7] [0:100] 'data.csv' using 1:2 with lines lt 2,\
[4.7:6] [0:100] 'data.csv' using 1:2 with lines lt 3

但它似乎不起作用,因为我只收到“invalid expression”消息。

使用
linecolor变量
动态指定从哪种线型获取颜色:

lt(x) = (x >= 4.7 ? 3 : (x >= 4.6 ? 2 : 1))
plot 'data.csv' using 1:2:(lt($1)) linecolor variable

尽管Christoph answer提出的方法适用于有限数量的颜色变化,但在我的案例中,设置该方法可能是漫长而复杂的,因为我的真实数据集将有许多峰值和许多颜色变化

基于这个问题,我找到了一个更好的方法,它只是使用第三列(可以简单地使用电子表格添加),用gnuplot代码设置每个数据点的颜色:

plot [2:6] [0:100] 'data.csv' using 1:2:3 linecolor variable with lines notitle