2013-01-23 23 views
5

カラーバーのボーダーを白く、黒でないように変更するにはどうすればよいですか?例えばmatplotlibでカラーバーのボーダーカラーをカスタマイズする

x=randint(100, size=(10,10)) 
cs=contourf(x) 
cb=colorbar(cs) 

enter image description here

を与えるが、私がしたい:

enter image description here

おかげ

+0

側の注意点として

cb.outline.set_edgecolor('white') 

作品を、あなたも 'cb.outline.set_visible(偽)による、それを透明にすることができます白ではなくむしろ。 – otterb

答えて

11

編集: MPL 1.3以降のコメントに注目してください。 PiQuerが述べたように

cb=colorbar(cs, drawedges=True) 

cb.outline.set_color('white') 
cb.outline.set_linewidth(2) 

cb.dividers.set_color('white') 
cb.dividers.set_linewidth(2) 
+0

ありがとう!それは期待通りに動作します –

+4

matplotlib(1.4.3)の新しいバージョンかもしれませんが、 'cb.outline.set_edgecolor( 'white')'を使用しなければなりませんでした。 – PiQuer

+0

@PiQuer、あなたは正しいです。 MPL 1.3では、輪郭が 'Line'オブジェクトから' Polygon'オブジェクトに変更されています。 'set_color'を使うと、** edge **と** facecolor **の両方に影響しますが、' Line'は** facecolor **を持っていません。 ** edgecolor **を具体的に設定すると、あなたの提案どおりに行くことができます。更新していただきありがとうございます。参照:https://github.com/matplotlib/matplotlib/pull/2352 –

0

追加、今日

関連する問題