特に色がほとんど含まれていない場合は、自分でカラーマップを作成する方が簡単だと思います。これはオレンジ-ホワイト-ブルーです。
cdict = {'red': [ (0.0, 0.0, 0.0),
(0.475, 1.0, 1.0),
(0.525, 1.0, 1.0),
(1.0, 1.0, 1.0)
],
'green': [ (0.0, 0.0, 0.0),
(0.475, 1.0, 1.0),
(0.525, 1.0, 1.0),
(1.0, 0.65, 0.0)
],
'blue': [ (0.0, 1.0, 1.0),
(0.475, 1.0, 1.0),
(0.525, 1.0, 1.0),
(1.0, 0.0, 0.0)
]
}
rwb_cmap = matplotlib.colors.LinearSegmentedColormap(name = 'rwb_colormap', colors = cdict, N = 256)
カラーマップは、RGB 値の辞書です。色ごとに、タプルのリストが異なるセグメントを提供します。各セグメントは、0 から 1 の範囲の z 軸に沿ったポイントです。レベルの色は、これらのセグメントから補間されます。
segment z-axis end start
i z[i] v0[i] v1[i]
i+1 z[i+1] v0[i+1] v1[i+1]
i+2 z[i+2] v0[i+2] v1[i+2]
との間のレベルにはz[i]
、と の間z[i+1]
の色がv1[i]
ありますv0[i+1]
。これにより、色を「ジャンプ」することができます。v0[0]
使用されv1[-1]
ません。必要な数のセグメントを使用できます。(ここから適応: http://matplotlib.org/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap )
N
は量子化レベルの数です。したがって、N = 256
256 レベルのマップを補間します。私は怠惰から 256 を使用します。N = 6
4つの輪郭を設定して作成するときは注意が必要だと思います。
0.475 と 0.525 は、中央の輪郭が完全に白であることを確認するためのものです。レベル[-1.5, -0.5, 0.5, 1.5]
の塗りつぶしがオレンジ-ホワイト-ブルーになりました。代わりに 0.5 を使用した場合、中間レベルは青みがかった色とオレンジ色がかった色の補間になります。
オレンジの RGB コードは 255-165-0 またはスケールが 0-1 の場合は 1-0.65-0 です。