【问题标题】:Gnuplot heatmap from matrix来自矩阵的 Gnuplot 热图
【发布时间】:2016-03-09 04:38:51
【问题描述】:

我正在尝试从矩阵中绘制热图。到目前为止,我的代码如下所示:

set terminal pdf
set output 'output.pdf'
set autoscale yfix
set autoscale xfix
set palette defined (0 0 0 0.5, 1 0 0 1, 2 0 0.5 1, 3 0 1 1, 4 0.5 1 0.5, 5 1 1 0, 6 1 0.5 0, 7 1 0 0, 8 0.5 0 0)
set pm3d map
splot 'topologyDataActive' matrix notitle

有了这些数据:

100.0 43.48 49.39 0.52 22.26 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
43.48 100.0 92.35 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
49.39 92.35 100.0 68.0 91.13 40.35 49.57 98.96 81.57 8.87 22.96 37.91 46.09 1.04 0.0 
0.52 0.0 68.0 100.0 86.26 39.48 0.0 1.04 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
22.26 0.0 91.13 86.26 100.0 95.3 41.57 23.65 12.52 0.0 0.0 0.0 0.0 0.0 0.0 
0.0 0.0 40.35 39.48 95.3 100.0 82.26 95.13 58.43 29.57 66.78 67.83 2.43 22.61 0.0 
0.0 0.0 49.57 0.0 41.57 82.26 100.0 95.48 0.0 0.0 0.0 0.0 0.0 0.0 0.0 
0.0 0.0 98.96 1.04 23.65 95.13 95.48 100.0 82.43 18.61 10.78 0.0 8.35 0.0 0.0 
0.0 0.0 81.57 0.0 12.52 58.43 0.0 82.43 100.0 80.52 80.87 11.3 82.96 24.52 1.04 
0.0 0.0 8.87 0.0 0.0 29.57 0.0 18.61 80.52 100.0 85.91 96.35 97.39 0.0 0.0 
0.0 0.0 22.96 0.0 0.0 66.78 0.0 10.78 80.87 85.91 100.0 85.91 85.91 85.91 0.52 
0.0 0.0 37.91 0.0 0.0 67.83 0.0 0.0 11.3 96.35 85.91 100.0 97.22 99.83 0.17 
0.0 0.0 46.09 0.0 0.0 2.43 0.0 8.35 82.96 97.39 85.91 97.22 100.0 99.3 1.04 
0.0 0.0 1.04 0.0 0.0 22.61 0.0 0.0 24.52 0.0 85.91 99.83 99.3 100.0 0.0 
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.04 0.0 0.52 0.17 1.04 0.0 100.0 

这给了我这个图表:

到目前为止,这看起来还不错。但首先,缺少一列一行,我不知道为什么。另外,我用更少的数据测试了它,只有这个:

100.0 43.48 
43.48 100.0

这只给了我一个正方形:

如果我添加一列和一行零,我会得到四个正方形,但颜色是关闭的:

现在的问题是,如何获得正确的颜色以及正确的列和行行?

【问题讨论】:

  • 与下面答案的评论相同。我得到了正方形之间的过渡,这是我不想要的。
  • 不,你没有得到任何过渡。这是一些pdf查看器的问题。尝试例如Firefox 来查看 pdf,你会看到,你得到了一个完美的图像。
  • 什么鬼……你是对的。我没想到。

标签: gnuplot heatmap


【解决方案1】:

您只需使用with image 扩展您的splot 命令:

splot 'topologyDataActive' matrix with image notitle 

图像绘图风格投射出一个均匀采样的数据值网格。

【讨论】:

  • 我之前尝试过,但后来我得到了我绝对不想要的过渡。每个方块需要有一种颜色,并且颜色之间不应有过渡。
  • 如果您不需要曲面或 3D,请尝试普通的 plot 命令。这也会产生没有过渡或插值的热图。
  • 为了完成:用图像解决它,但如果有过渡,请检查Pdf查看器。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-02
  • 1970-01-01
  • 2021-08-27
  • 1970-01-01
  • 2023-03-03
相关资源
最近更新 更多