9

我在一个文件中有一些 XYZ 数据,我正在使用 gnuplot 来显示它。我正在创建一个热图,即。一个 2D 图,其中 Z 值使用颜色表示。现在我正在使用以下脚本:

set palette defined (0 "blue", 1 "red")
plot "xyz.dat" u $1:$2:$3 w image

我的问题是,gnuplot 忽略了调色板定义中的 0 和 1。它使用指定的颜色,但根据文件中的最小和最大 Z 值重新缩放。这使得很难直观地比较 z 范围不同的不同图。

如何告诉 gnuplot 停止重新缩放 z 颜色范围?

4

1 回答 1

14

“设置调色板定义”命令将您在使用灰度绘图时获得的灰度值映射到调色板上;缩放到 min -> 0 和 max -> 1 是它应该如何工作的。如果要制作一组具有相同数据缩放比例的图,则需要使用“set cbrange”命令。例如,

  set cbrange [0:0.5]
  set palette defined (0 "blue", 1 "red")
  splot '++' using 1:2:(sin($1)*cos($2)) w image

给你一个最大数据值 0.5 映射到红色和 0 映射到蓝色的图像图。随后的情节,如

  splot '++' using 1:2:(0.5*sin($1)*cos($2)) w image

将使用相同的缩放比例,因此可以比较它们。

于 2012-08-03T14:06:53.590 回答