matplotlib.legend#

凡例モジュールは、軸や図に関連付けられた凡例の描画を担当する Legend クラスを定義します。

重要

Legend インスタンスを手動で作成することはほとんどありません。ほとんどのユーザーは通常、legend 関数を介して凡例を作成します。凡例の詳細については、凡例ガイドもあります。

このLegendクラスは、凡例ハンドルと凡例テキストのコンテナーです。

凡例ハンドラー マップは、軸または図のアーティスト (線、パッチなど) から凡例ハンドルを作成する方法を指定します。デフォルトの凡例ハンドラーは、legend_handlerモジュールで定義されています。すべてのアーティスト タイプがデフォルトの凡例ハンドラーでカバーされるわけではありませんが、カスタムの凡例ハンドラーを定義して、任意のオブジェクトをサポートできます。

詳細については、凡例ガイドを参照してください。

クラス matplotlib.legend. DraggableLegend ( legend , use_blit = False , update = 'loc' ) [source] #

拠点:DraggableOffsetBox

Legendマウスのドラッグをサポートするための a のラッパー。

パラメータ:
伝説Legend

ラップするLegendインスタンス。

use_blitブール値、オプション

画像合成を高速化するには、ブリッティングを使用します。詳細については、 FuncAnimationを参照してください。

update {'loc', 'bbox'}、オプション

「loc」の場合、ファイナライズ時に凡例のlocパラメータを更新します。「bbox」の場合、bbox_to_anchorパラメータを更新します。

finalize_offset ( ) [ソース] #
クラス matplotlib.legend. Legend ( parent handles labels * loc = None numpoints = None markerscale = None markerfirst = True scatterpoints = None scatteryoffsets = None prop = None fontsize = None labelcolor = None borderpad=なし labelspacing =なし handlelength =なし handleheight =なし handletextpad =なし borderaxespad =なし columnspacing =なし ncols = 1 mode =なし fancybox =なし shadow =なし title =なし title_fontsize =なしframealpha =なしedgecolor =なしfacecolor =なしbbox_to_anchor =なしbbox_transform =なしframeon =なしhandler_map =なしtitle_fontproperties =なしalignment = 'center'ncol = 1 ) [source] #

拠点:Artist

場所 loc で軸に凡例を配置します。

パラメータ:
AxesまたはFigure

伝説を含むアーティスト。

のリストを処理しますArtist

凡例に追加するアーティスト (ライン、パッチ) のリスト。

str のラベルリスト

アーティストの横に表示するラベルのリスト。ハンドルとラベルの長さは同じでなければなりません。そうでない場合は、両方の長さの小さい方に切り捨てられます。

その他のパラメータ:
loc str または float のペア、デフォルト: rcParams["legend.loc"](デフォルト: 'best') (軸の場合は「最適」、数値の場合は「右上」)

伝説の場所。

文字列 は、凡例を軸/図の対応するコーナーに配置します。'upper left', 'upper right', 'lower left', 'lower right'

文字列 は、凡例を軸/図の対応するエッジの中心に配置します。'upper center', 'lower center', 'center left', 'center right'

文字列'center'は、凡例を軸/図の中心に配置します。

文字列'best'は、これまでに定義された 9 つの場所の中で、他の描画されたアーティストとの重複が最小限になる場所に凡例を配置します。このオプションは、大量のデータを含むプロットでは非常に遅くなる可能性があります。特定の場所を指定すると、プロット速度が向上する場合があります。

位置は、凡例の左下隅の座標を軸座標で指定する 2 タプルにすることもできます (この場合、bbox_to_anchor は無視されます)。

下位互換性のために、(他の場所は不可) を綴ることもでき、各「文字列」の場所を数値として指定することもできます。'center right''right'

ロケーション文字列

ロケーションコード

'一番'

0

'右上'

1

'左上'

2

'左下'

3

'右下'

4

'右'

5

「中央左」

6

「中央右」

7

「下中央」

8

「アッパーセンター」

9

'中心'

10

bbox_to_anchor BboxBase、2 タプル、または float の 4 タプル

locと組み合わせて凡例を配置するために使用されるボックス。デフォルトはaxes.bbox(のメソッドとして呼び出された場合Axes.legend) または figure.bbox(の場合Figure.legend) です。この引数により、凡例を任意に配置できます。

Bbox 座標は、 bbox_transformによって指定された座標系で解釈され、 どちらlegendが呼び出されるかに応じて、デフォルトの変換 Axes または Figure 座標が使用されます。

4 タプル orBboxBaseが指定されている場合 、凡例が配置される bbox を指定します。凡例を軸 (または図) の右下の象限の最適な位置に配置するには、次のようにします。(x, y, width, height)

loc='best', bbox_to_anchor=(0.5, 0., 0.5, 0.5)

2 タプルは、 locで指定された凡例の角をx、y に配置します。たとえば、凡例の右上隅を軸 (または図) の中央に配置するには、次のキーワードを使用できます。(x, y)

loc='upper right', bbox_to_anchor=(0.5, 0.5)
ncols int、デフォルト: 1

凡例の列数。

下位互換性のために、スペルncolもサポートされていますが、推奨されません。両方を指定すると、ncolsが優先されます。

prop None or matplotlib.font_manager.FontPropertiesor dict

凡例のフォント プロパティ。なし (デフォルト) の場合、現在の matplotlib.rcParamsものが使用されます。

fontsize int または {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}

凡例のフォント サイズ。値が数値の場合、サイズはポイント単位の絶対フォント サイズになります。文字列値は、現在のデフォルトのフォント サイズに相対的です。この引数は、 propが指定されていない場合にのみ使用されます。

labelcolor文字列またはリスト、デフォルト: rcParams["legend.labelcolor"](デフォルト: 'None')

凡例のテキストの色。有効な色の文字列 ('red' など)、または色の文字列のリスト。labelcolor は、'linecolor'、'markerfacecolor' (または 'mfc')、または 'markeredgecolor' (または 'mec') を使用して、線またはマーカーの色と一致させることもできます。

rcParams["legend.labelcolor"]Labelcolor は(デフォルト: )を使用してグローバルに設定できます'None'。None の場合はrcParams["text.color"](デフォルト: 'black') を使用します。

numpoints int、デフォルト: rcParams["legend.numpoints"](デフォルト: 1)

Line2D(線)の凡例エントリを作成するときの凡例のマーカー ポイントの数。

散布点int、デフォルト: rcParams["legend.scatterpoints"](デフォルト: 1)

PathCollection(散布図)の凡例エントリを作成するときの凡例のマーカー ポイントの数。

float の反復可能なscatteryoffsets 、デフォルト:[0.375, 0.5, 0.3125]

散布図の凡例エントリ用に作成されたマーカーの (フォント サイズに対する) 垂直方向のオフセット。0.0 は凡例テキストの下部にあり、1.0 は上部にあります。すべてのマーカーを同じ高さに描画するには、 に設定し[0.5]ます。

マーカースケールfloat、デフォルト: rcParams["legend.markerscale"](デフォルト: 1.0)

最初に描画された凡例マーカーと比較した凡例マーカーの相対的なサイズ。

markerfirstブール値、デフォルト: True

Trueの場合、凡例マーカーは凡例ラベルの左側に配置されます。Falseの場合、凡例マーカーは凡例ラベルの右側に配置されます。

frameon bool、デフォルト: rcParams["legend.frameon"](デフォルト: True)

凡例をパッチ (フレーム) に描画するかどうか。

fancybox bool、デフォルト: rcParams["legend.fancybox"](デフォルト: True)

FancyBboxPatch凡例の背景を構成する の周囲で丸いエッジを有効にするかどうか。

shadow bool、デフォルト: rcParams["legend.shadow"](デフォルト: False)

凡例の背後に影を描画するかどうか。

framealpha float、デフォルト: rcParams["legend.framealpha"](デフォルト: 0.8)

凡例の背景のアルファ透明度。shadowがアクティブで、framealphaがの場合None、デフォルト値は無視されます。

facecolor "継承" または色、デフォルト: rcParams["legend.facecolor"](デフォルト: 'inherit')

凡例の背景色。の場合は(デフォルト: )"inherit"を使用します。rcParams["axes.facecolor"]'white'

edgecolor "継承" または色、デフォルト: rcParams["legend.edgecolor"](デフォルト: '0.8')

凡例の背景パッチ エッジの色。の場合"inherit"、テイクを使用しますrcParams["axes.edgecolor"](デフォルト: 'black')。

モード{"展開", なし}

モードが設定されている場合"expand"、凡例は軸領域を埋めるために水平方向に拡張されます (または、凡例のサイズを定義する場合はbbox_to_anchor )。

bbox_transformなしまたはmatplotlib.transforms.Transform

境界ボックスの変換 ( bbox_to_anchor )。(デフォルト) の値の場合None、Axes の transAxes変換が使用されます。

title str または None

伝説のタイトル。デフォルトはタイトルなし ( None) です。

title_fontpropertiesなし またはmatplotlib.font_manager.FontPropertiesまたは dict

凡例のタイトルのフォント プロパティ。None (デフォルト) の場合、 title_fontsize引数があればそれが使用されます。title_fontsizeも None の場合、現在の(rcParams["legend.title_fontsize"]デフォルト: None) が使用されます。

title_fontsize int または {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}, デフォルト: rcParams["legend.title_fontsize"](デフォルト: None)

凡例のタイトルのフォント サイズ。注: これはtitle_fontpropertiesと組み合わせることはできません。他のフォント プロパティと一緒にフォント サイズを設定する場合は、 title_fontpropertiesでsize パラメータを使用します。

配置{'center', 'left', 'right'}, デフォルト: 'center'

凡例のタイトルとエントリのボックスの配置。エントリは単一のブロックとして整列されるため、マーカーは常に整列します。

ボーダーパッドfloat、デフォルト: rcParams["legend.borderpad"](デフォルト: 0.4)

凡例の境界線内の小数の空白 (フォント サイズ単位)。

labelspacing float、デフォルト: rcParams["legend.labelspacing"](デフォルト: 0.5)

凡例エントリ間の垂直方向のスペース (font-size 単位)。

handlelength float、デフォルト: rcParams["legend.handlelength"](デフォルト: 2.0)

凡例ハンドルの長さ (font-size 単位)。

handleheight float、デフォルト: rcParams["legend.handleheight"](デフォルト: 0.7)

凡例ハンドルの高さ (font-size 単位)。

handletextpad float、デフォルト: rcParams["legend.handletextpad"](デフォルト: 0.8)

凡例ハンドルとテキストの間のパッド (フォント サイズ単位)。

borderaxespad float、デフォルト: rcParams["legend.borderaxespad"](デフォルト: 0.5)

軸と凡例の境界線の間のパッド (フォント サイズ単位)。

列間隔float、デフォルト: rcParams["legend.columnspacing"](デフォルト: 2.0)

フォントサイズ単位での列間の間隔。

handler_map dict または None

インスタンスまたは型を凡例ハンドラーにマッピングするカスタム辞書。このhandler_mapは、 にあるデフォルトのハンドラ マップを更新しますmatplotlib.legend.Legend.get_legend_handler_map

ノート

ユーザーはbbox_to_anchorキーワード引数を使用して凡例の任意の場所を指定できます 。bbox_to_anchorBboxBaseは、2 つまたは 4 つの float の (またはそこから派生した) またはタプルにすることができます 。詳細については、を参照してくださいset_bbox_to_anchor

凡例の位置は、2 つの float のタプルでlocを設定することによって指定できます。これは、正規化された軸座標の凡例の左下隅として解釈されます。

コード= {'ベスト': 0, '中央': 10, '中央左': 6, '中央右': 7, '中央下': 8, '左下': 3, '右下': 4, 'right': 5, 'upper center': 9, 'upper left': 2, 'upper right': 1} #
含む(イベント) [ソース] #

アーティストにマウス イベントが含まれているかどうかをテストします。

パラメータ:
マウスイベントmatplotlib.backend_bases.MouseEvent
戻り値:
ブール値を含む

値が半径内にあるかどうか。

詳細辞書

ピック半径に含まれるポイントなど、イベント コンテキストの詳細に関するアーティスト固有のディクショナリ。詳細については、個々のアーティスト サブクラスを参照してください。

draw (レンダラー) [ソース] #

指定されたレンダラーを使用してアーティスト (およびその子) を描画します。

アーティストが表示されていない場合、これは効果がありません ( Artist.get_visible False を返します)。

パラメータ:
レンダラーRendererBaseのサブクラス。

ノート

このメソッドは Artist サブクラスでオーバーライドされます。

draw_frame ( b ) [ソース] #

レジェンド ボックス パッチを描画するかどうかを設定します。

パラメータ:
ブール
get_alignment ( ) [ソース] #

凡例ボックスの配置値を取得します

get_bbox_to_anchor ( ) [ソース] #

凡例が固定される bbox を返します。

get_children ( ) [ソース] #

Artistthisの子のリストを返しArtistます。

classmethod get_default_handler_map ( ) [ソース] #

すべての凡例で共有されるグローバルなデフォルト ハンドラー マップを返します。

get_draggable ( ) [ソース] #

True凡例がドラッグ可能である場合は返し、Falseそうでない場合は返します。

get_frame ( ) [ソース] #

Rectangle凡例のフレームに使用される を返します。

get_frame_on ( ) [ソース] #

レジェンド ボックス パッチが描画されているかどうかを取得します。

static get_legend_handler ( legend_handler_map , orig_handle ) [ソース] #

orig_handlerに対応するlegend_handler_mapから凡例ハンドラーを返します。

legend_handler_mapはディクショナリ オブジェクトである必要があります (get_legend_handler_map メソッドによって返されます)。

最初にorig_handle自体が legend_handler_map のキーである どうかをチェックし、関連付けられた値を返します。それ以外の場合は、メソッド解決順序で各クラスをチェックします。一致するキーが見つからない場合は、 を返しますNone

get_legend_handler_map ( ) [ソース] #

この凡例インスタンスのハンドラ マップを返します。

get_lines ( ) [ソース] #

Line2D凡例の のリストを返します。

get_patches ( ) [ソース] #

Patch凡例の のリストを返します。

get_texts ( ) [ソース] #

Text凡例の のリストを返します。

get_tightbbox ( renderer = None ) [source] #

と同様Artist.get_window_extentですが、クリッピングが含まれます。

パラメータ:
レンダラーRendererBaseサブクラス

図形の描画に使用されるレンダラー (つまり fig.canvas.get_renderer())

戻り値:
Bbox

囲んでいる境界ボックス (Figure のピクセル座標)。

get_title ( ) [ソース] #

Text凡例のタイトルのインスタンスを返します。

get_window_extent ( renderer = None ) [source] #

表示スペースでアーティストのバウンディング ボックスを取得します。

境界ボックスの幅と高さは負ではありません。

サブクラスは、境界ボックスの「タイトな」計算に含めるためにオーバーライドする必要があります。デフォルトでは、0, 0 で空のバウンディング ボックスを返します。

この関数を使用するときは注意してください。アーティストのアーティスト ウィンドウ範囲が変更された場合、結果は更新されません。範囲は、座標軸の範囲、Figure のサイズ、または使用されるキャンバス (Figure の保存時に行われる) の変更など、変換スタック内の変更によって変更される可能性があります。これにより、インタラクティブな Figure が画面上で正常に表示されても、正しく保存されないという予期しない動作が発生する可能性があります。

set ( * agg_filter=<UNSET> alignment=<UNSET> alpha=<UNSET> animated=<UNSET> bbox_to_anchor=<UNSET> clip_box=<UNSET> clip_on=<UNSET> clip_path=<UNSET > , draggable=<UNSET> , frame_on=<UNSET> , gid=<UNSET> , in_layout=<UNSET> , label=<UNSET> , mouseover=<UNSET> , ncols=<UNSET> , path_effects=<UNSET> ,ピッカー=<未設定> ,rasterized=<UNSET> ,sketch_params=<UNSET> , snap=<UNSET> , title=<UNSET> , transform=<UNSET> , url=<UNSET> , visible=<UNSET> , zorder=<UNSET> ) [source] #

一度に複数のプロパティを設定します。

サポートされているプロパティは

財産

説明

agg_filter

(m, n, 3) float 配列と dpi 値を取り、(m, n, 3) 配列と画像の左下隅からの 2 つのオフセットを返すフィルター関数

alignment

{'中央', '左', '右'}.

alpha

スカラーまたはなし

animated

ブール

bbox_to_anchor

BboxBaseまたはタプル

clip_box

Bbox

clip_on

ブール

clip_path

パッチまたは (パス、変換) またはなし

draggable

ブール

figure

Figure

frame_on

ブール

gid

in_layout

ブール

label

物体

mouseover

ブール

ncols

わからない

path_effects

AbstractPathEffect

picker

None または bool または float または callable

rasterized

ブール

sketch_params

(位取り: float、長さ: float、乱数: float)

snap

ブールまたはなし

title

transform

Transform

url

visible

ブール

zorder

浮く

set_alignment (アライメント) [ソース] #

凡例のタイトルとエントリ ボックスの配置を設定します。

エントリは単一のブロックとして整列されるため、マーカーは常に整列します。

パラメータ:
配置{'center', 'left', 'right'}.
set_bbox_to_anchor ( bbox , transform = None ) [source] #

凡例が固定される bbox を設定します。

パラメータ:
bboxBboxBaseまたはタプル

境界ボックスは、次の方法で指定できます。

  • BboxBaseインスタンス_

  • 指定された変換のタプル(None の場合は正規化された座標軸)(left, bottom, width, height)

  • 幅と高さがゼロと見なされる場所のタプル。(left, bottom)

  • None、bbox アンカーを削除し、親 bbox を使用します。

変換Transform、オプション

境界ボックスに適用する変換。指定しない場合、親のバウンディング ボックスへの変換が使用されます。

classmethod set_default_handler_map ( handler_map ) [ソース] #

すべての凡例で共有される、グローバルなデフォルト ハンドラー マップを設定します。

set_draggable ( state , use_blit = False , update = 'loc' ) [source] #

凡例のマウス ドラッグ サポートを有効または無効にします。

パラメータ:
ステートブール

マウスのドラッグを有効にするかどうか。

use_blitブール値、オプション

画像合成を高速化するには、ブリッティングを使用します。詳細については、 FuncAnimationを参照してください。

update {'loc', 'bbox'}、オプション

ドラッグ時に変更される凡例パラメータ:

  • 'loc': 凡例のlocパラメータを更新します

  • 'bbox': 凡例のbbox_to_anchorパラメータを更新します

戻り値:
DraggableLegendまたはなし

stateの場合、これはヘルパー インスタンスをTrue返します。それ以外の場合、これはNoneDraggableLegendを返します。

set_frame_on ( b ) [ソース] #

レジェンド ボックス パッチを描画するかどうかを設定します。

パラメータ:
ブール
set_ncols ( ncols ) [ソース] #

列数を設定します。

set_title ( title , prop = None ) [source] #

凡例のタイトルとタイトル スタイルを設定します。

パラメータ:
タイトル文字列

伝説のタイトル。

小道具font_manager.FontPropertiesまたはstrまたはpathlib.Path

凡例タイトルのフォント プロパティ。の場合、strによって解析された fontconfig パターンとして解釈され FontPropertiesます。の場合、pathlib.Pathフォント ファイルへの絶対パスとして解釈されます。

classmethod update_default_handler_map ( handler_map ) [ソース] #

すべての凡例で共有される、グローバルなデフォルト ハンドラー マップを更新します。

ズオーダ= 5 #