Gnuplot 具有类别数据的热图

Gnuplot 具有类别数据的热图,gnuplot,heatmap,Gnuplot,Heatmap,我正试图通过gnuplot绘制热图。问题是:如何使用gnuplot积累数据。 从一个数据集开始: 0 0 0 0 1 1 1 0 2 1 1 3 可以很容易地通过 set view map splot 'test.data' using 2:1:3 with image 问题是:不仅有一个数据集,还有许多数据集。请参见以下示例数据: 0 0 0 0 1 1 1 0 2 1 1 3 0 0 3 0 1 2 1 0 1 1 1 20 它具有重复的x/y值。是否可以使用gnuplot对第三列(

我正试图通过gnuplot绘制热图。问题是:如何使用gnuplot积累数据。 从一个数据集开始:

0 0 0
0 1 1
1 0 2
1 1 3
可以很容易地通过

set view map
splot 'test.data' using 2:1:3 with image 
问题是:不仅有一个数据集,还有许多数据集。请参见以下示例数据:

0 0 0
0 1 1
1 0 2
1 1 3
0 0 3
0 1 2
1 0 1
1 1 20
它具有重复的x/y值。是否可以使用gnuplot对第三列(此处显示的“数据列”)进行汇总:

0 0 0       0 0 3       0 0 3
0 1 1       0 1 2       0 1 3
1 0 2   +   1 0 1   =   1 0 3
1 1 3       1 1 20      1 1 23
我的第一个想法是使用
every
,就像在
plot“test.data”中一样,使用2:1:3,每4个图像都使用
。但是这不起作用。有人知道怎么做吗

对于感兴趣的人:我想绘制fitbit数据的热图:
此文件包含我所做的九周计数步骤。第一列是一周中的一天(星期日到星期六)。第二列表示从早上0:00开始的一天中的5分钟步骤。绘制一周看起来不错,但绘制过去两年的总和/平均值可能会非常棒。当然,如果我们知道如何绘制,我会发布一张图片。请随意使用步骤数据。

这看起来像是awk的工作me.
awk
可以从
gnuplot
中调用,如下所示:

sp '<awk ''{a[$1,$2]+=$3}END{for(i in a){split(i,s,SUBSEP);print s[2],s[1],a[i]}}'' test.data' w image

sp'有时,我对
awk
的能力感到害怕!它仍然需要一些微调,但看看过去九周的steps数据:@Tobias Nice graph。我刚刚添加了我的解释,希望现在更清楚。
awk
是一个非常有用的工具,值得一试。祝你好运!啊,坦克解释。我不得不看了几遍代码,才知道发生了什么并最终得到它。但是我错过了最后的重新安排部分。谢谢!