Colormapは無視されmatplotlib contourfプロットのカスタムレベル
-
26-10-2019 - |
質問
私が作り出してしまおうというものを入等高線プロットmatplotlib(Win7,1.1.0).たいへ一定の値のレベルに近いログイン以上の非線形です。
数多くのcolormapsうせんが、私の選択cmapは無視されます。
また、カスタム"正常化"?その場合は各輪郭の色によると、その端の値よびその同じ色の下はどのようなものか?なぜそのような症状のことを無視する私の色マッ---この一部の例外を建設中でとらわれることは、私の要求は無視され?
私のオリジナルデータが欠損値です。私た作thise nan、大小---それぞれていたマスキングしていないマスキングの"外"値です。もし全ての組み合のデフォルトのレベル。
lev = [0.1,0.2,0.5,1.0,2.0,4.0,8.0,16.0,32.0]
norml = colors.normalize(0,32)
cs = plt.contourf(x,z,data,cmap=cm.gray, levels=lev, norm = norml)
このスニペットは十分に少なくとも開始する。
おかげさ Eli
解決
ばかなことが分かって良かっただく必要がありrescaleデータを色用レベルの基礎としてではなくデフォルトのリニアスケーリングです。だが、それを使用する必要があり colors.BoundaryNorm
としての規範の要因です。次の例を考えてみてください:
x = np.arange(0,8,0.1)
y = np.arange(0,8,0.1)
z = (x[:,None]-4) ** 2 + (y[None,:]-4) ** 2
lev = [0.1,0.2,0.5,1.0,2.0,4.0,8.0,16.0,32.0]
norml = colors.BoundaryNorm(lev, 256)
cs = plt.contourf(x, y, z, cmap = cm.jet, levels = lev, norm = norml)
plt.show()
この利回り
と比較することでデフォルト Normalize
行動:
い役立っています。
所属していません StackOverflow