質問

私が作り出してしまおうというものを入等高線プロット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()

この利回り

enter image description here

と比較することでデフォルト Normalize 行動:

enter image description here

い役立っています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top