2017-07-05 141 views
0

在Gnuplot的单个3D图形中有没有什么方法可以构建三个2D地图(三个热图)?我有三个数据集(以矩阵形式)在单个3D图形中绘制为2D地图:XY平面中的第一个数据,XZ中的第二个数据和YZ中的最后一个。 因此我尝试(幼稚)代码:在Gnuplot中的单个3D图形中的三个2D地图

set multiplot splot 'data_1' matrix u 1:2:3 w image splot 'data_2' matrix u 2:3:1 w image splot 'data_3' matrix u 3:2:1 w image unset multiplot

但除了“_1”地图,所有的人都未按比例。 有什么办法可以做到这一点?

回答

0

您必须给splot命令4条信息:x,y和z坐标以及该颜色的值。例如,脚本

set xyplane at -0.5 
set xrange [-0.5:3.5] 
set yrange [-0.5:3.5] 
set zrange [-0.5:3.5] 
set xtics 1 
set ytics 1 
set ztics 1 
set view 55,110 
unset key 
splot "data.dat" matrix u 1:2:(-0.5):3 w image, \ 
     "" matrix u 1:(-0.5):2:3 w image, \ 
     "" matrix u (-0.5):1:2:3 w image 

其中data.dat是矩阵格式的数据文件,如

1 2 3 2 
4 5 6 5 
7 8 9 8 
4 5 6 5 

给出了下面的输出:

enter image description here

+0

非常感谢你@ user8153,这很简单。但是由于某些原因(当我不知道)矩阵行超过4时,绘图不适合轴比例。因此,根据你的建议,我尝试了一个修改。我在一个颜色值网格中使用了脚本( ... \ ... \)。现在输出图是以轴为单位的。 –