以下では次のようにモジュールを
importしているものとする.
描画用のデータを作る.
配色を制御する
カラーマップを指定する
色を指定する
境界が
11個なら必要な色は
10個.
値の範囲と範囲外の色を指定する
カラーマップに対して
set_under, set_overを行いそれぞれ下側,上側の色を指定する.
np.linspace(1,3,11)の端の部分を範囲外にしてみる.
◇注意!
plt.cm.Spectralをコピーしているのは,これ自体に変更が加えられるのを避けるためである.
cmap = plt.cm.Spectralとすると
cmapは
plt.cm.Spectralを指示するポインターのような役割を持ち,
cmapに加えられた変更が
plt.cm.Spectralにも反映される.なのでこのカラーマップを使って別の図を描こうとすると,範囲外の色が変更された状態のものを呼び出してしまうことになる.
もちろんそれでも別に不都合が無いという場合は(というか不都合が生じることの方が少ないだろうが)わざわざコピーしなくとも良い.
方法
2を取る場合は
cs.changed()が必要.これでコンターに変更が反映される.