我想从文本文件中绘制一个脉冲图,如下所示:
II 5 0 0 288.40 1.3033e+14
II 6 0 0 289.60 1.5621e+14
II 1 4 0 302.70 3.0084e+13
II 2 4 0 303.40 4.0230e+13
II 1 5 1 304.40 3.4089e+13
Run Code Online (Sandbox Code Playgroud)
从概念上讲,情节应该是plot "datafile.dat" using 5:6 w impulses ls $2。
基本上,给定一组先前定义的线条样式,我想为第 5 列和第 6 列中的每对绘制点输入第 2 列中的线条样式编号
。另外,我想为每个绘制的点创建一个文本框点,从前四列中取出字符串。
有人知道这是否可能吗?
要将第二列中的数据用作线型,请使用set style increment user和linecolor variable:
set style increment user
plot "datafile.dat" using 5:6:2 with impulses lc var
Run Code Online (Sandbox Code Playgroud)
为了放置标签,请使用labels绘图样式:
plot "datafile.dat" using 5:6:1 with labels offset 0,1
Run Code Online (Sandbox Code Playgroud)
将所有内容放在一起,您将得到:
set style increment user
set for [i=1:6] style line i lt i
set yrange [0:*]
set offsets 0,0,graph 0.1,0
plot "datafile.dat" using 5:6:2 with impulses lc var, "" using 5:6:1 with labels offset 0,1
Run Code Online (Sandbox Code Playgroud)
4.6.3的结果是:
