2013-06-22 38 views
3

我有一个包含两列(时间和值)的数据系列,以及一个带整数的附加列,说明如何获取数据。例如根据某些整数数据列对图进行分区

0 15.1 0 
1 20.2 0 
2 34.3 1 
3 41.5 2 
4 61.7 1 
5 79.6 0 
6 48.2 0 
7 92.1 1 

现在,我通常绘制的前两列与

plot "data" u 1:2 w l 

但我现在希望使用第三列移到“分区”具有垂直线,使得两个邻接的记录与图形第三列的相同值得到相同的背景。对于第三列中的每个值,都会关联一个背景颜色。

在上述数据的情况下,该图将具有例如从时间0到时间2(不包括)开始的蓝色背景列,从2到3的绿色背景列,从3到4,再次从4到5等等。

另一种解决方案(我实际上可能更喜欢)是在第三列的值切换其值的垂直线上,并且图的每个区域都有一个标签(比如顶轴),对应于第三列的值。

有什么想法?谢谢!编辑: 下面是我想获得的一个例子。第三列的值放在顶部。

Partition plot with vertical lines

回答

2
top=100 
set yrange [:top] 

unset colorbox 
set style fill solid 1.0 
set palette defined (0 "blue",1 "green", 2 "red") 

plot "data.dat" u ($1+.5):(top):3 w boxes lt palette,"" u 1:2 w l lc -1 lw 2 

set palette定义对应于第三列的颜色。 .5正在改变,因为直方图以其中心值为中心。

+1

太棒了!非常感谢! – AkiRoss

相关问题