これは実際には非常に良い質問です-カラーバーの範囲を決定したいということを意味していると仮定します(凡例[つまりキー]ではなく、通常、凡例にはその情報がありません)。
私の最初の考えはでしたset cbrange
。これはあなたが望むことをするかもしれません-
set cbrange [0:1500]
set palette rgbformulae 33,13,10
plot "file.dat" u 1:2:3 w p pt 7 palette
ただし、問題は「範囲外の点をどうしたいのか」です。このソリューションは、範囲外のポイントをスケールの下/上に移動します (たとえば、負の数は紫、1500 より大きい数は赤)。私の次の考えは、それらのポイントを切り取ることができるはずだということでしたset zrange [0:1500]
-- しかし、それはうまくいきません。この時点で、少なくとも 2 つのオプションがあります。
オプション 1: splot を使用:
set view map
set cbrange [0:1500]
set zrange [0:1500]
set palette rgbformulae 33,13,10
splot "file.dat" u 1:2:3 w p pt 7 palette
境界線は以前とは少し異なりますが、それは大した問題ではありません。
オプション 2:三項演算子でフィルター処理します (前の質問で既に知っていることです):
set cbrange [0:1500]
set palette rgbformulae 33,13,10
inrange(c)=((c>=0) && (c<=1500))? c : (1/0)
plot "file.dat" u 1:2:(inrange($3)) w p pt 7 palette
pm3d
また、カラー マップをプロットする場合は、プロット スタイルを調べることもできます (うまくいく場合もありimage
ます)。データファイルを少し再構築する必要があるかもしれませんが、カラー マップをプロットすることは、スタイルのパンとバターをプロットすることです。