如何在 gnuplot 中强制颜色范围

Mei*_*ess 5 plot gnuplot range

我正在使用 Gnuplot 4.6。我有数据文件,每个数据文件包含 3 列数据:X 坐标、Y 坐标和温度。我希望制作温度图作为 X 和 Y 坐标函数的动画。为此,我使用以下脚本:

set pm3d map; set palette;
do for [n=0:200] {splot sprintf("Temperature.%04d.dbl", n) binary array=100:100:1 form="%double" title 'file number'.n}
Run Code Online (Sandbox Code Playgroud)

我的问题是,在几张图之后,颜色的分布在图和图例中都发生了变化。这使得从图表中读取数据变得非常困难。我查阅了以下帖子:

gnuplot 热图颜色范围

由于温度变量的范围是从 0.0 到 1.2 我想使用:

set zrange [0.0:1.2]; set cbrange [0.0:1.2];
Run Code Online (Sandbox Code Playgroud)

但这没有帮助,并且温度颜色继续从图到图自动缩放。有什么建议么?

F. *_*orr 5

除了设置之外cbrange,您还可以尝试通过以下方式定义自己的调色板

set palette defined (0 "black",\
                     0.2 "red",\
                     0.4 "orange-red",\
                     0.6 "orange",\
                     0.8 "yellow",\
                     1.0 "light-green",\
                     1.2 "green")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

或者,如果您想要离散值:

set palette defined (0 "black",\
                     0.2 "black",\
                     0.2 "red",\
                     0.4 "red",\
                     0.4 "orange-red",\
                     0.6 "orange-red",\
                     0.6 "orange",\
                     0.8 "orange",\
                     0.8 "yellow",\
                     1.0 "yellow",\
                     1.0 "light-green",\
                     1.2 "light-green")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述