2012-08-03 268 views
6

我在文件中有一些X Y Z數據,我使用gnuplot來顯示它。 我正在創建一個熱圖,即。使用顏色呈現Z值的2D圖。 現在,我使用下面的腳本:gnuplot熱圖顏色範圍

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

我的問題是,gnuplot的調色板定義忽略了0和1。它使用指定的顏色,但根據文件中的最小和最大Z值重新縮放。 這使得很難直觀地比較z範圍不同的不同圖。

如何告訴gnuplot停止重新調整z顏色範圍?

回答

9

「設置調色板定義」命令會映射如果使用灰度繪製到調色板上時將得到的灰度值;縮放到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 

將使用相同的縮放比例,這樣他們就可以進行比較。