GNUplot:从文件中绘制颜色映射

时间:2016-08-04 14:03:46

标签: gnuplot heatmap colormap

我正在处理彩色地图但我遇到了一些问题。这是我的代码:

set size 1,1; set origin 0,0
set grid layerdefault
set xlabel "x (rdaius)"
set ylabel "z (radius)"

set sample 11; set isosamples 11
set pm3d map
set palette
set colorbox
set lmargin 0


set pm3d flush begin
splot 'density.txt' u 1:2:3

但是,有错误消息:

  

警告:对于pm3d图,单个等值线(扫描)是不够的。

如何解决问题?

另外,我尝试使用plot 'density.txt' u 1:2:3 with image,还有错误消息:

  

像素数无法计入匹配网格的整数中。 N = 36759 K = 201

注意 数据文件density.txt的格式为

  X       Y      N Part.
=====   =====    =====
-10.0   -10.0     10.0
-10.0    -9.9     324.0
-10.0    -9.8     256.5
-10.0    -9.7     0.0
-10.0    -9.6     32.5
-10.0    -9.5     7.8
-10.0    -9.4     66.4
 ...      ...      ...

其中x和y的范围是-10到10,N.部分的范围是0.0到~1000.0。

谢谢!

1 个答案:

答案 0 :(得分:2)

在增加第一维中的值之前,您需要一个空行:

#data.dat
<x1> <y1> <z11>
<x1> <y2> <z12>
<x1> <y3> <z13>
<x1> <y4> <z14>

<x2> <y1> <z21>
<x2> <y2> <z22>
<x2> <y3> <z23>
<x2> <y4> <z24>

...

<xn> <y1> <zn1>
<xn> <y2> <zn2>
<xn> <y3> <zn3>
<xn> <y4> <zn4>

您还需要使用splot 'data.dat' every ::2 ...

跳过标题