Как форсировать цветовой диапазон в gnuplot


Я использую 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}
Моя проблема заключается в том, что после нескольких сюжетов распределение цветов меняется, как в сюжете, так и в легенде. Это делает чтение из графика действительно трудным. Я проконсультировался со следующим сообщение:

Цветовая гамма тепловой карты Gnuplot

И поскольку диапазон изменения температуры составляет от 0.0 до 1.2, я решил использовать:

set zrange [0.0:1.2]; set cbrange [0.0:1.2];
Но это не помогает, и цвет температуры продолжает автоматически масштабироваться от участка к участку. Есть предложения?
1 3

1 ответ:

В дополнение к настройке 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")

Введите описание изображения здесь

Или если вы хотите дискретные значения:

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")

Введите описание изображения здесь