您可以用set palette functions
定義您自己的基於功能的調色板。打字show palette rgbformulae
顯示您所使用的默認調色板中的功能(7,5,15
)的定義:
gnuplot> show palette rgbformulae
* there are 37 available rgb color mapping formulae:
0: 0 1: 0.5 2: 1
3: x 4: x^2 5: x^3
6: x^4 7: sqrt(x) 8: sqrt(sqrt(x))
9: sin(90x) 10: cos(90x) 11: |x-0.5|
12: (2x-1)^2 13: sin(180x) 14: |cos(180x)|
15: sin(360x) 16: cos(360x) 17: |sin(360x)|
...
所以,你可以定義自己的函數爲紅色,綠色和藍色這在調色板的一端給白:
r(x) = sqrt(x)
g(x) = x**3
b(x) = (x == 1 ? 1 : sin(2*pi*x))
set palette functions r(gray),g(gray),b(gray)
出於演示,這裏是一個完整的示例腳本,其中高於-10所有值均爲白色:
r(x) = sqrt(x)
g(x) = x**3
b(x) = (x == 1 ? 1 : sin(2*pi*x))
set palette functions r(gray),g(gray),b(gray)
set isosamples 100
set pm3d map
set cbrange [-200:-10]
set cbtics -200,40
set cbtics add ('> -10' -10)
splot -x**2 - y**2 notitle
與4.6.5輸出是:
很好。一些我不明白的地方。如果從文件加載,爲什麼要傳遞'gray'而不是值,比如'r(灰色$ 1)'?另外,在'b(x)'1中,'cbrange'的最大值是否正確?例如,我希望可以將其設置爲值「X」,然後將實際的色彩圖繪製爲「X + 10」,以便在色彩條頂部有一個實際的白色塊。 – James 2014-09-24 00:24:12
例如,我希望有一個彩條可以繪製像[這個](http://imgur.com/F4giDLf) – James 2014-09-24 00:31:28
好吧,我已經得到它:取代所有有三元。 (x)=(x> = 0.9?1:sqrt(x))','g(x)=(x> = 0.9?1:x ** 3) x> = 0.9?1:sin(2 * pi * x))'。感謝您的幫助 – James 2014-09-24 02:50:11