我有一个以这种格式排列的数据文件file.dat
:
DataA:
0 2
1 3
7 2
1 2
DataB:
3 2
6 4
1 1
我想从这个数据文件中获取2个图。
为了生成我使用的第一个图
set key autotitle columnheader right
plot for [i=0:1] 'file.dat' using 1:2 index i with lp
对于其他情节,我只想要一个简单的条形图:
y-axis
表示DataA和DataB的点数。
我不了解如何计算列表中的点数,同时也绘制数据集。
P.S我可以同时获得这两个地块吗?
修改
file.dat
可以包含多个数据。例如
DataA:
0 2
1 3
7 2
1 2
.
.
.
DataZ:
3 2
6 4
答案 0 :(得分:2)
要计算积分,请使用stats
。要并排绘制,请使用multiplot
。
stats 'file.dat' using 1:2 every :::0::0 name 'A' # to get stats with prefix 'A_'
stats 'file.dat' using 1:2 every :::1::1 name 'B'
set multiplot layout 1,2 # 1 row, 2 columns
plot for [i=0:1] 'file.dat' using 1:2 index i with lp
set object 1 rect from 1,0 to 3,A_records fc rgb 'red'
set object 2 rect from 5,0 to 7,B_records fc rgb 'red'
set xrange [0:8]
max=(A_records>B_records ? A_records:B_records)+0.5
set yrange [0:max]
set format x ''
unset xtics
set xtics ('DataA' 2, 'DataB' 6)
plot -10 notitle
unset multiplot