7

単純な等高線図を作成しています。ゼロラインを太くして色を変更することで、ゼロラインを強調表示したいと思います。

cs = ax1.contour(x,y,obscc)
ax1.clabel(cs,inline=1,fontsize=8,fmt='%3.1f')

どうすればこれを達成できますか?ありがとう :-)

4

1 に答える 1

9

HTH-これは基本的にmatplotlibdocsから取得した等高線の例であり、レベルラインが変更されています

-methodから返されるオブジェクトは、その属性contourに等高線への参照を保持します。collections等高線は単なる一般的なLineCollectionsです。

次のコードスニペットでは、等高線図への参照が含まれていますCS(これはcsあなたの質問です)。

CS.collections[0].set_linewidth(4)           # the dark blue line
CS.collections[2].set_linewidth(5)           # the cyan line, zero level
CS.collections[2].set_linestyle('dashed')
CS.collections[3].set_linewidth(7)           # the red line
CS.collections[3].set_color('red')
CS.collections[3].set_linestyle('dotted')

type(CS.collections[0])
# matplotlib.collections.LineCollection

レベルを明示的に指定しなかった場合、レベルを確認する方法は次のとおりです。

CS.levels
array([-1. , -0.5,  0. ,  0.5,  1. ,  1.5])

個々のラベルをフォーマットするための多くの機能もあります。

CS.labelCValueList    CS.labelIndiceList    CS.labelTextsList
CS.labelCValues       CS.labelLevelList     CS.labelXYs
CS.labelFmt           CS.labelManual        CS.labels
CS.labelFontProps     CS.labelMappable      CS.layers
CS.labelFontSizeList  CS.labelTexts
于 2013-01-10T22:20:42.913 に答える