我正在使用 gnuplot 来分析数据。
我经常使用调色板和矩阵。
但是,每当我使用它时,精度始终是个问题。
如果我通过定义许多颜色来提高精度,则很难记住和阅读。
如果我减少颜色数以清除比较,则精度会降低。
所以我正在考虑带有情节编号的矩阵。
如果我能同时显示颜色和数字,就会更容易查看和分析。
至少我只想显示数字,(只使用 excel 是一种选择,但我不想)
或显示不同颜色的数字。(颜色由点值决定)
如果你知道怎么做,请告诉我。
如果你不能理解,请告诉我。
先感谢您,
要绘制标签,只需使用with labels
绘图样式。您可以使用任何字符串和字符串格式,例如 withsprintf
来设置标签:
reset
set autoscale fix
set palette defined (0 'white', 1 'green')
set tics scale 0
unset cbtics
set cblabel 'Score'
unset key
plot 'data.txt' matrix with image,\
'' matrix using 1:2:(sprintf('%.2f', $3)) with labels font ',16'
pngcairo
终端和 gnuplot 4.6.3的结果是:
这个例子的数据文件data.txt
是:
0.22 0.13 0.54 0.83 0.08
0.98 0.57 0.52 0.24 0.66
0.23 0.68 0.24 0.89 0.76
0.89 0.78 0.69 0.78 0.10
0.24 0.77 0.27 0.28 0.69
扩展上述答案:人们经常发现标签应该具有不同颜色以便可读的情况。要在深色背景上生成白色标签,在明亮背景上生成黑色标签,我使用以下代码:
threshold = 123456
f = "..."
plot f matrix with image ,\
'' matrix using 1:2:($3 > threshold ? sprintf('%1.2f', $3) : sprintf("")) with labels tc "white" ,\
'' matrix using 1:2:($3 < threshold ? sprintf('%1.2f', $3) : sprintf("")) with labels tc "black"