GNUplot:从文件绘制颜色图

GNUplot: drawing color map from file

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

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

但是,出现错误信息:

Warning: Single isoline (scan) is not enough for a pm3d plot.

如何解决这个问题?

另外,我试过使用plot 'density.txt' u 1:2:3 with image,也有错误信息:

Number of pixels cannot be factored into integers matching grid. 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.Part 的范围从 0.0 到 ~1000.0。

谢谢!

在第一个维度中递增值之前需要一个空行:

#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 ...

跳过您的 headers