Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
来自矩阵的Gnuplot热图_Gnuplot_Heatmap - Fatal编程技术网

来自矩阵的Gnuplot热图

来自矩阵的Gnuplot热图,gnuplot,heatmap,Gnuplot,Heatmap,我正试着从矩阵中画出热图。到目前为止,我的代码如下所示: 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 'topology

我正试着从矩阵中画出热图。到目前为止,我的代码如下所示:

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
这只给了我一个正方形:

如果我加上一列和一行零,我会得到四个正方形,但颜色不一样:


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

您只需使用带有图像的
扩展
splot
命令即可:

splot 'topologyDataActive' matrix with image notitle 

图像打印样式投影一个均匀采样的数据值网格。

与下面答案上的注释相同。我在正方形之间有过渡,这是我不想要的。不,你没有任何过渡。这是一些pdf查看器的问题。试着用Firefox来查看pdf,你会看到,你得到了一个完美的图像。。。你是对的。我没想到会这样。参考:我以前试过,但后来我得到了我绝对不想要的过渡。每个正方形需要有一种颜色,并且颜色之间不应有过渡。如果不需要曲面或3D,请尝试使用普通
绘图
命令。这也会生成没有过渡或插值的热图。为了完成:with image会解决它,但如果有过渡,请检查Pdf查看器。