matplotlib.backend_bases
#
抽象基本クラスは、レンダラーとグラフィックス コンテキストが Matplotlib バックエンドとして機能するために実装する必要があるプリミティブを定義します。
RendererBase
描画/レンダリング操作を処理する抽象基本クラス。
FigureCanvasBase
Figure
ユーザー インターフェイスの描画領域など、バックエンド固有の詳細からを分離する抽象化レイヤー。GraphicsContextBase
色、線のスタイルなどを提供する抽象基本クラス。
Event
すべての Matplotlib イベント処理の基本クラス。
KeyEvent
およびなどの派生クラスはMouseEvent
、押されたキーやボタン、ピクセルおよびAxes
座標での x および y 位置などのメタ データを格納します。ShowBase
Show
各インタラクティブ バックエンドのクラスの基本クラス。次に、「show」呼び出し可能オブジェクトが に設定されShow.__call__
ます。ToolContainerBase
各インタラクティブ バックエンドの Toolbar クラスの基本クラス。
- クラス matplotlib.backend_bases. CloseEvent ( name , canvas , guiEvent = None ) [source] #
拠点:
Event
フィギュアが閉じられることによってトリガーされるイベント。
- クラス matplotlib.backend_bases. DrawEvent ( name , canvas , renderer ) [source] #
拠点:
Event
キャンバスでの描画操作によってトリガーされるイベント。
ほとんどのバックエンドでは、このイベントにサブスクライブされたコールバックは、レンダリングが完了した後、画面が更新される前に発生します。キャンバスのレンダラーに描画された追加のアーティストは、 を明示的に呼び出さなくても反映され
blit
ます。警告
これらのコールバックで and を呼び出す
canvas.draw
とcanvas.blit
、すべてのバックエンドで安全であるとは限らず、無限再帰が発生する可能性があります。DrawEvent には、親
Event
クラスで定義された属性に加えて、いくつかの特別な属性があります。- 属性:
- レンダラー
RendererBase
描画イベントのレンダラー。
- レンダラー
- クラス matplotlib.backend_bases. Event ( name , canvas , guiEvent = None ) [source] #
拠点:
object
Matplotlib イベント。
次の属性が定義され、デフォルト値とともに表示されます。サブクラスは、追加の属性を定義できます。
- 属性:
- 名前文字列
イベント名。
- キャンバス
FigureCanvasBase
イベントを生成するバックエンド固有のキャンバス インスタンス。
- guiEvent
Matplotlib イベントをトリガーした GUI イベント。
- クラス matplotlib.backend_bases. FigureCanvasBase (図=なし) [ソース] #
拠点:
object
Figure がレンダリングされるキャンバス。
- 属性:
- 形
matplotlib.figure.Figure
高レベルの Figure インスタンス。
- 形
- プロパティ button_pick_id #
- button_press_event ( x , y ,ボタン, dblclick = False , guiEvent = None ) [source] #
[非推奨] マウス ボタン プレス イベントのコールバック処理。
バックエンドの派生クラスは、マウス ボタンが押されたときにこの関数を呼び出す必要があります。( x , y ) はキャンバス座標です ((0, 0) は左下です)。ボタンとキーは で定義されてい
MouseEvent
ます。このメソッドは、「button_press_event」に接続されたすべての関数を
MouseEvent
インスタンスで呼び出します。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('button_press_event', MouseEvent(...)) を使用してください。
- button_release_event ( x , y ,ボタン, guiEvent = None ) [source] #
[非推奨] マウス ボタン リリース イベントのコールバック処理。
バックエンドの派生クラスは、マウス ボタンが離されたときにこの関数を呼び出す必要があります。
このメソッドは、「button_release_event」に接続されたすべての関数を
MouseEvent
インスタンスで呼び出します。- パラメータ:
- ×フロート
キャンバスの座標は 0=左です。
- yフロート
キャンバスの座標は 0=下です。
- guiEvent
Matplotlib イベントを生成したネイティブ UI イベント。
ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('button_release_event', MouseEvent(...)) を使用してください。
- プロパティの コールバック#
- close_event ( guiEvent =なし) [ソース] #
[非推奨
CloseEvent
]に接続されているすべての関数にa を渡しclose_event
ます。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('close_event', CloseEvent(...)) を使用してください。
- プロパティ device_pixel_ratio #
画面上のキャンバスに使用される物理ピクセルと論理ピクセルの比率。
デフォルトでは、これは 1 です。これは、物理ピクセルと論理ピクセルが同じサイズであることを意味します。高 DPI 画面をサポートするサブクラスは、このプロパティを設定して、比率が異なることを示すことができます。キャンバスを直接操作しない限り、Matplotlib のすべての対話は論理ピクセルのままです。
- draw ( * args , ** kwargs ) [source] #
をレンダリングし
Figure
ます。このメソッドは、出力が生成されない場合でも、アーティスト ツリーをたどる必要があります。これは、ユーザーが出力をディスクに保存する前にアクセスする可能性がある遅延作業をトリガーするためです。たとえば、制限、自動制限、目盛り値の計算などです。
- draw_event (レンダラー) [ソース] #
[非推奨
DrawEvent
]に接続されているすべての関数にa を渡しdraw_event
ます。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('draw_event', DrawEvent(...)) を使用してください。
- draw_idle ( *引数, ** kwargs ) [ソース] #
制御が GUI イベント ループに戻ったら、ウィジェットの再描画を要求します。
draw_idle
制御が GUI イベント ループに戻る前に複数の呼び出しが発生した場合でも、Figure は 1 回だけレンダリングされます。ノート
バックエンドは、複数のレンダリングを防ぐためにメソッドをオーバーライドし、独自の戦略を実装することを選択できます。
- enter_notify_event ( guiEvent =なし, xy =なし) [ソース] #
[非推奨] マウスカーソルがキャンバスに入ったときのコールバック処理。
バックエンドの派生クラスは、キャンバスに入るときにこの関数を呼び出す必要があります。
- パラメータ:
- guiEvent
Matplotlib イベントを生成したネイティブ UI イベント。
- xy (フロート、フロート)
キャンバスに入ったときのポインターの座標位置。
ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('enter_notify_event', LocationEvent(...)) を使用してください。
- events = ['resize_event', 'draw_event', 'key_press_event', 'key_release_event', 'button_press_event', 'button_release_event', 'scroll_event', 'motion_notify_event', 'pick_event', 'figure_enter_event', 'figure_leave_event', 'axes_enter_event' , 'axes_leave_event', 'close_event'] #
- filetypes = {'eps': 'Encapsulated Postscript', 'jpeg': 'Joint Photographic Experts Group', 'jpg': 'Joint Photographic Experts Group', 'pdf': 'Portable Document Format', 'pgf': 'PGF LaTeX のコード', ' png ': 'Portable Network Graphics', 'ps': 'Postscript', 'raw': 'Raw RGBAビットマップ', 'rgba': 'Raw RGBAビットマップ','svg': 'スケーラブルベクターグラフィックス', 'svgz': 'Scalable Vector Graphics', 'tif': 'Tagged Image File Format', 'tiff': 'Tagged Image File Format', 'webp': 'WebP Image Format'} #
- fixed_dpi =なし#
- classmethod get_default_filetype ( ) [ソース] #
で指定されたデフォルトの savefig ファイル形式を返します
rcParams["savefig.format"]
(デフォルト:'png'
)。返された文字列にはピリオドが含まれていません。このメソッドは、単一のファイル タイプのみをサポートするバックエンドでオーバーライドされます。
- classmethod get_supported_filetypes_grouped ( ) [ソース] #
このバックエンドでサポートされている savefig ファイル形式の dict を返します。ここで、キーは「Joint Photographic Experts Group」などのファイル タイプ名であり、値はそのファイル タイプに使用されるファイル拡張子のリストです (['jpg' など)。 、「jpeg」]。
- get_width_height ( * , physical = False ) [source] #
Figure の幅と高さを整数ポイントまたはピクセル単位で返します。
Figure が高 DPI 画面 (およびバックエンドでサポートされている) で使用される場合、デバイスのピクセル比によるスケーリング後に整数への切り捨てが発生します。
- パラメータ:
- 物理ブール、デフォルト: False
真の物理ピクセルまたは論理ピクセルを返すかどうか。物理ピクセルは、HiDPI をサポートするバックエンドで使用できますが、実際のサイズを使用してキャンバスを構成します。
- 戻り値:
- 幅、高さの整数
バックエンドに応じて、Figure のサイズ (ポイントまたはピクセル単位)。
- グラブマウス( ax ) [ソース] #
Axes
マウス イベントを取得する子を設定します。通常、ウィジェット自体によって呼び出されます。マウスが別の Axes によって既にグラブされている場合、これを呼び出すとエラーになります。
- inaxes ( xy ) [ソース] #
Axes
ポイントxyを含む最上位の可視オブジェクトを返します。- パラメータ:
- xy (フロート、フロート)
(x, y) キャンバスの左/下からのピクセル位置。
- 戻り値:
Axes
またはなしポイントを含む最上位の可視 Axes、またはポイントに Axes がない場合は None。
- key_press_event ( key , guiEvent = None ) [source] #
[非推奨
KeyEvent
]に接続されているすべての関数にa を渡しkey_press_event
ます。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('key_press_event', KeyEvent(...)) を使用してください。
- key_release_event ( key , guiEvent = None ) [source] #
[非推奨
KeyEvent
]に接続されているすべての関数にa を渡しkey_release_event
ます。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('key_release_event', KeyEvent(...)) を使用してください。
- leave_notify_event ( guiEvent = None ) [ソース] #
[非推奨] マウス カーソルがキャンバスを離れたときのコールバック処理。
バックエンドの派生クラスは、キャンバスを離れるときにこの関数を呼び出す必要があります。
- パラメータ:
- guiEvent
Matplotlib イベントを生成したネイティブ UI イベント。
ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('leave_notify_event', LocationEvent(...)) を使用してください。
- manager_class [ソース] #
のエイリアス
FigureManagerBase
- motion_notify_event ( x , y , guiEvent = None ) [ソース] #
[非推奨] マウス移動イベントのコールバック処理。
バックエンドの派生クラスは、すべてのモーション通知イベントでこの関数を呼び出す必要があります。
このメソッドは、'motion_notify_event' に接続されたすべての関数を
MouseEvent
インスタンスで呼び出します。- パラメータ:
- ×フロート
キャンバスの座標は 0=左です。
- yフロート
キャンバスの座標は 0=下です。
- guiEvent
Matplotlib イベントを生成したネイティブ UI イベント。
ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('motion_notify_event', MouseEvent(...)) を使用してください。
- mpl_connect ( s , func ) [ソース] #
関数funcをイベントsにバインドします。
- パラメータ:
- s str
次のイベント ID のいずれか:
'button_press_event'
'button_release_event'
'draw_event'
'key_press_event'
'key_release_event'
「モーション通知イベント」
'pick_event'
'resize_event'
「スクロールイベント」
'figure_enter_event',
'figure_leave_event',
'axes_enter_event',
「axes_leave_event」
「close_event」。
- 関数呼び出し可能
実行するコールバック関数。署名が必要です:
def func(event: Event) -> Any
位置イベント (ボタンとキーのプレス/リリース) の場合、マウスが軸の上にある場合、イベントの
inaxes
属性はAxes
イベントが発生したときに設定され、さらに、変数xdata
とydata
属性がマウスに設定されます。データ座標の位置。詳細についてはKeyEvent
、 とMouseEvent
を参照してください。
- 戻り値:
- シド
で使用できる接続 ID
FigureCanvasBase.mpl_disconnect
。
例
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = canvas.mpl_connect('button_press_event', on_press)
- mpl_disconnect ( cid ) [ソース] #
ID cidのコールバックを切断します。
例
cid = canvas.mpl_connect('button_press_event', on_press) # ... later canvas.mpl_disconnect(cid)
- classmethod new_manager ( figure , num ) [source] #
このキャンバス クラスを使用して、figureの新しい Figure マネージャーを作成します。
ノート
このメソッドは、サブクラスで再実装しないでください。カスタム マネージャ作成ロジックが必要な場合は、再実装してください
FigureManager.create_with_canvas
。
- new_timer ( interval = None , callbacks = None ) [source] #
の新しいバックエンド固有のサブクラスを作成します
Timer
。これは、バックエンドのネイティブ イベント ループを通じて定期的なイベントを取得するのに役立ちます。GUI を使用するバックエンドに対してのみ実装されます。
- パラメータ:
- インターバル整数
ミリ秒単位のタイマー間隔。
- コールバックリスト[tuple[callable, tuple, dict]]
interval ごとにタイマーによって実行される(func, args, kwargs) のシーケンス。
func(*args, **kwargs)
タイマーを返すコールバック、
False
または0
タイマーから削除されるコールバック。
例
>>> timer = fig.canvas.new_timer(callbacks=[(f1, (1,), {'a': 3})])
- pick_event ( mouseevent , artist , ** kwargs ) [source] #
[非推奨] pick イベントのコールバック処理。
このメソッドは、選択されたアーティストによって呼び出され、
PickEvent
登録されたリスナーのコールバックを開始します。デフォルトでは、アーティストは選択できないことに注意してください (「 」を参照
Artist.set_picker
)。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('pick_event', PickEvent(...)) を使用してください。
- print_figure ( filename , dpi = None , facecolor = None , edgecolor = None , orientation = 'portrait' , format = None , * , bbox_inches = None , pad_inches = None , bbox_extra_artists = None , backend = None , ** kwargs ) [source ] #
Figure をハードコピーにレンダリングします。Figure パッチの面とエッジの色を設定します。一部の GUI では背景色が灰色で、ハードコピーではこれをオーバーライドする必要があるため、これは便利です。
- パラメータ:
- filename str または path-like または file-like
Figure が保存されるファイル。
- dpi float、デフォルト:
rcParams["savefig.dpi"]
(デフォルト:'figure'
) Figure を保存する 1 インチあたりのドット数。
- facecolor color または 'auto', デフォルト:
rcParams["savefig.facecolor"]
(デフォルト:'auto'
) フィギュアのフェイスカラー。'auto' の場合、現在の図の facecolor を使用します。
- edgecolor色または 'auto', デフォルト:
rcParams["savefig.edgecolor"]
(デフォルト:'auto'
) Figure のエッジカラー。'auto' の場合、現在の Figure のエッジカラーを使用します。
- 向き{'landscape', 'portrait'}、デフォルト: 'portrait'
現在、PostScript 印刷にのみ適用されます。
- フォーマット文字列、オプション
特定のファイル形式を強制します。指定されていない場合、形式はファイル名拡張子から推測され、失敗した場合は
rcParams["savefig.format"]
(デフォルト:'png'
) から推測されます。- bbox_inches 'tight' または
Bbox
、デフォルト:rcParams["savefig.bbox"]
(デフォルト:None
) インチ単位の境界ボックス: Figure の指定された部分のみが保存されます。'tight' の場合、Figure のタイトな bbox を見つけようとします。
- pad_inches float、デフォルト:
rcParams["savefig.pad_inches"]
(デフォルト:0.1
) bbox_inchesが 'tight' の場合の図の周りのパディングの量。
- bbox_extra_artistsのリスト
Artist
、オプション タイトな bbox が計算されるときに考慮される追加のアーティストのリスト。
- バックエンド文字列、オプション
デフォルト以外のバックエンドを使用してファイルをレンダリングします。たとえば、デフォルトの「agg」ではなく「cairo」バックエンドで png ファイルをレンダリングしたり、デフォルトの「pdf」ではなく「pgf」バックエンドで pdf ファイルをレンダリングしたりします。通常、デフォルトのバックエンドで十分であることに注意してください。各ファイル形式の有効なバックエンドのリストについては、組み込みのバックエンドを参照 してください。カスタム バックエンドは「module://...」として参照できます。
- release_mouse ( ax ) [ソース] #
斧で保持されているマウスグラブを放します。
Axes
通常、ウィジェットによって呼び出されます。axe が現在マウス グラブを持っていなくても、これを呼び出しても問題ありません。
- required_interactive_framework =なし#
- サイズ変更( w、 h ) [ソース] #
未使用: キャンバスのサイズをピクセル単位で設定します。
特定のバックエンドは同様のメソッドを内部的に実装する場合がありますが、これは必要条件ではなく、Matplotlib 自体によって使用されることもありません。
- resize_event ( ) [ソース] #
[非推奨
ResizeEvent
]に接続されているすべての関数にa を渡しresize_event
ます。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('resize_event', ResizeEvent(...)) を使用してください。
- scroll_event ( x , y , step , guiEvent = None ) [source] #
[非推奨] スクロール イベントのコールバック処理。
バックエンドの派生クラスは、スクロール ホイール イベントでこの関数を呼び出す必要があります。( x , y ) はキャンバス座標です ((0, 0) は左下です)。ボタンとキーは で定義されてい
MouseEvent
ます。このメソッドは、「scroll_event」に接続されたすべての関数を
MouseEvent
インスタンスで呼び出します。ノート
バージョン 3.6 で非推奨:代わりに callbacks.process('scroll_event', MouseEvent(...)) を使用してください。
- プロパティ scroll_pick_id #
- set_cursor (カーソル) [ソース] #
現在のカーソルを設定します。
バックエンドが何も表示しない場合、これは効果がない可能性があります。
バックエンドで必要な場合、このメソッドは、カーソルが設定された後、バックエンド イベント ループで更新をトリガーする必要があります。このメソッドは、たとえば、GUI が更新されない長時間実行タスクの前に呼び出される可能性があるためです。
- パラメータ:
- カーソル
Cursors
キャンバス上に表示するカーソル。注: 一部のバックエンドでは、ウィンドウ全体のカーソルが変更される場合があります。
- カーソル
- start_event_loop (タイムアウト= 0 ) [ソース] #
ブロッキング イベント ループを開始します。
このようなイベント ループは、 や などの対話型関数でイベントを待機するために使用され
ginput
ますwaitforbuttonpress
。stop_event_loop
イベント ループは、コールバック関数がトリガーされるか、タイムアウトに達するまでブロックされます 。timeoutが 0 または負の場合、タイムアウトしません。
このメソッドを再実装する必要があるのはインタラクティブなバックエンドだけであり、
flush_events
適切に実装されている必要があります。インタラクティブなバックエンドは、これをよりネイティブな方法で実装する必要があります。
- stop_event_loop ( ) [ソース] #
現在のブロッキング イベント ループを停止します。
インタラクティブなバックエンドは、一致するようにこれを再実装する必要があります
start_event_loop
- supports_blit = False #
- クラス matplotlib.backend_bases. FigureManagerBase (キャンバス,数値) [ソース] #
拠点:
object
Figure コンテナーとコントローラーのバックエンドに依存しない抽象化。
Figure マネージャーは、バックエンドに依存しない方法でウィンドウと対話するために pyplot によって使用されます。これは、画面上の視覚的な図を表す実際の (GUI) フレームワーク用のアダプターです。
GUI バックエンドは、このクラスから定義して、表示やサイズ変更などの一般的な操作を GUI 固有のコードに変換します。非 GUI バックエンドはこれらの操作をサポートせず、基本クラスのみを使用できます。
次の基本操作にアクセスできます。
ウィンドウ操作
キーとマウス ボタンの押下処理
key_press_handler
Figure マネージャーは、matplotlib イベント システムに接続することで、デフォルトのキーとマウス ボタンの押下処理を設定します。これにより、バックエンド全体で同じショートカットとマウス アクションが保証されます。その他の操作
サブクラスには、追加の機能にアクセスするための追加の属性と関数があります。もちろん、これはバックエンド固有です。たとえば、ほとんどの GUI バックエンドには、それぞれのフレームワークのネイティブ GUI ウィジェットへのアクセスを提供する属性が
window
あります。toolbar
- 属性:
- キャンバス
FigureCanvasBase
バックエンド固有のキャンバス インスタンス。
- num int または str
図の番号。
- key_press_handler_id int
toolmanager を使用する場合のデフォルトのキー ハンドラー cid。デフォルトのキー押下処理を無効にするには:
figure.canvas.mpl_disconnect( figure.canvas.manager.key_press_handler_id)
- button_press_handler_id int
toolmanager を使用する場合のデフォルトのマウス ボタン ハンドラ cid。デフォルトのボタン押下処理を無効にするには:
figure.canvas.mpl_disconnect( figure.canvas.manager.button_press_handler_id)
- キャンバス
- classmethod create_with_canvas ( canvas_class , figure , num ) [source] #
特定のcanvas_classを使用して、特定のFigureのマネージャーを作成します。
バックエンドは、キャンバスまたはマネージャーをセットアップする特定のニーズがある場合、このメソッドをオーバーライドする必要があります。
- get_window_title ( ) [ソース] #
Figure を含むウィンドウのタイトル テキストを返すか、ウィンドウがない場合 (たとえば、PS バックエンド) は None を返します。
- set_window_title (タイトル) [ソース] #
Figure を含むウィンドウのタイトル テキストを設定します。
これは、GUI 以外 (PS など) のバックエンドには影響しません。
- show ( ) [ソース] #
GUI バックエンドの場合、Figure ウィンドウを表示して再描画します。非 GUI バックエンドの場合、ヘッドレスで実行していない限り (つまり、DISPLAY が設定されていない Linux で)、例外を発生させます。この例外は で警告に変換され
Figure.show
ます。
- クラス matplotlib.backend_bases. GraphicsContextBase [ソース] #
拠点:
object
色、線のスタイルなどを提供する抽象基本クラス。
- get_clip_path ( ) [ソース] #
クリップ パスを (path, transform) の形式で返します。path は
Path
インスタンス、transform はクリッピング前にパスに適用するアフィン変換です。
- get_dashes ( ) [ソース] #
ダッシュ スタイルを (オフセット、ダッシュ リスト) ペアとして返します。
詳細
set_dashes
については、を参照してください。デフォルト値は (なし、なし) です。
- get_snap ( ) [ソース] #
次のいずれかのスナップ設定を返します。
True: 頂点を最も近いピクセルの中心にスナップします
False: 頂点をそのままにする
なし: (自動) パスに直線セグメントのみが含まれる場合、最も近いピクセルの中心に丸めます
- set_alpha (アルファ) [ソース] #
ブレンドに使用するアルファ値を設定します - すべてのバックエンドでサポートされているわけではありません。
(デフォルト) の場合
alpha=None
、フォアグラウンド カラーと塗りつぶしカラーのアルファ コンポーネントを使用して、それぞれの透明度を設定します (該当する場合)。それ以外の場合は、alpha
それらをオーバーライドします。
- set_clip_path (パス) [ソース] #
クリップ パスを a
TransformedPath
または None に設定します。
- set_dashes ( dash_offset , dash_list ) [ソース] #
GC のダッシュ スタイルを設定します。
- パラメータ:
- dash_offset float
パターンを開始する破線パターンへの距離 (ポイント単位)。通常は 0 に設定されます。
- dash_list配列のようなものまたは None
ポイントとしてのオンオフ シーケンス。None は実線を指定します。それ以外の場合、すべての値は負ではない必要があります (\(\ge 0\))。
ノート
参照。詳細については、PostScript 言語リファレンスの 666 を参照 してください。
- set_foreground ( fg , isRGBA = False ) [ソース] #
前景色を設定します。
- パラメータ:
- fgカラー
- isRGBAブール
fgがタプルであることがわかっている場合、パフォーマンスを向上させるためにisRGBAを True に設定できます。
(r, g, b, a)
- set_sketch_params (スケール=なし、長さ=なし、ランダム性=なし) [source] #
スケッチ パラメータを設定します。
- パラメータ:
- スケールフロート、オプション
ソースラインに垂直なウィグルの振幅 (ピクセル単位)。尺度が の場合
None
、または指定されていない場合、スケッチ フィルタは提供されません。- 長さ浮動小数点、デフォルト: 128
線に沿ったウィグルの長さ (ピクセル単位)。
- 乱数フロート、デフォルト: 16
長さを縮小または拡大する倍率。
- クラス matplotlib.backend_bases. KeyEvent ( name , canvas , key , x = 0 , y = 0 , guiEvent = None ) [source] #
-
キーイベント (キープレス、キーリリース)。
KeyEvent には、親
Event
およびLocationEvent
クラスによって定義された属性に加えて、いくつかの特別な属性があります。ノート
修飾キーは、押されたキーの前に付けられ、「ctrl」、「alt」、「super」の順序になります。このルールの例外は、押されたキー自体が修飾キーであるため、"ctrl+alt" と "alt+control" の両方が有効なキー値になる可能性がある場合です。
例
def on_key(event): print('you pressed', event.key, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('key_press_event', on_key)
- 属性:
- キーNone または str
押されたキー。None 、大文字と小文字を区別する 1 つの Unicode 文字 ("g"、"G"、"#" など)、特殊キー ("control"、"shift"、"f1"、"up" など) を指定できます。または上記の組み合わせ (例: "ctrl+alt+g"、"ctrl+alt+G")。
- クラス matplotlib.backend_bases. LocationEvent ( name , canvas , x , y , guiEvent = None ) [source] #
拠点:
Event
画面の場所を持つイベント。
LocationEvent には、親
Event
クラスで定義された属性に加えて、いくつかの特別な属性があります。- 属性:
- lastevent =なし#
- クラス matplotlib.backend_bases. MouseEvent ( name , canvas , x , y , button = None , key = None , step = 0 , dblclick = False , guiEvent = None ) [source] #
-
マウス イベント ('button_press_event'、'button_release_event'、'scroll_event'、'motion_notify_event')。
MouseEvent には、親
Event
とLocationEvent
クラスによって定義された属性に加えて、いくつかの特別な属性があります。例
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('button_press_event', on_press)
- 属性:
- ボタンなし または
MouseButton
{'up', 'down'} ボタンが押されました。'up' と 'down' はスクロール イベントに使用されます。
LEFT と RIGHT は実際には「プライマリ」ボタンと「セカンダリ」ボタンを指すことに注意してください。つまり、ユーザーが左右のボタンを逆にすると (「左利き設定」)、左ボタンが物理的に右側になります。
これが設定されておらず、nameが「scroll_event」で、stepがゼロ以外の場合、 stepの符号に応じて「up」または「down」に設定されます。
- キーNone または str
マウス イベントがトリガーされたときに押されたキー (例: 'shift')。を参照してください
KeyEvent
。警告
このキーは現在、キャンバス内で発生した最後の「key_press_event」または「key_release_event」から取得されます。したがって、キャンバスにフォーカスがないときにキーボードの状態が最後に変更された場合、この属性は正しくありません。
- ステップフロート
スクロール ステップの数 (「上」の場合は正、「下」の場合は負)。これは「scroll_event」にのみ適用され、それ以外の場合はデフォルトで 0 になります。
- dblclickブール
イベントがダブルクリックかどうか。これは「button_press_event」にのみ適用され、それ以外の場合は False です。特に、「button_release_event」では使用されません。
- ボタンなし または
拠点:
object
ナビゲーション カーソルの基本クラス、バージョン 2。
バックエンドは、「button_press_event」と「button_release_event」の接続を処理するキャンバスを実装する必要があります。詳細について は、を参照
FigureCanvasBase.mpl_connect()
してください。また、定義する必要があります
save_figure()
現在の図を保存します
draw_rubberband()
(オプション)ズームを描画して、「ラバーバンド」長方形を長方形にします
set_message()
(オプション)表示メッセージ
set_history_buttons()
(オプション)履歴の戻る/進むボタンを変更して、無効/有効の状態を示すことができます。
基本クラスの init を呼び出すことを忘れずに、オーバーライド
__init__
してツールバーを設定します。通常、、、、、、および メソッドに接続された__init__
ツールバー ボタンを設定し、データ パスの「images」サブディレクトリにある標準アイコンを使用する必要があります。home
back
forward
pan
zoom
save_figure
それだけです、残りはやります!
ビュー リム スタックを上に戻します。
多くの場合、追加のパラメーターが渡される GUI コールバックとして直接接続できるようにするため、このメソッドは任意のパラメーターを受け入れますが、それらを使用しません。
パン/ズーム モードでドラッグするためのコールバック。
ズーム モードでドラッグするためのコールバック。
長方形のラバーバンドを描画して、ズームの制限を示します。
と であることを保証するものではないことに注意してください。
x0 <= x1
y0 <= y1
ビュー リム スタックを前方に移動します。
多くの場合、追加のパラメーターが渡される GUI コールバックとして直接接続できるようにするため、このメソッドは任意のパラメーターを受け入れますが、それらを使用しません。
元のビューを復元します。
多くの場合、追加のパラメーターが渡される GUI コールバックとして直接接続できるようにするため、このメソッドは任意のパラメーターを受け入れますが、それらを使用しません。
パン/ズーム ツールを切り替えます。
左ボタンでパン、右ボタンでズーム。
パン/ズーム モードでマウス ボタンを押したときのコールバック。
zoom to rect モードでのマウス ボタン押下のコールバック。
現在のビューの制限と位置をスタックにプッシュします。
パン/ズーム モードでマウス ボタンを離すためのコールバック。
ズーム・トゥ・レクト・モードでのマウス・ボタン・リリースのコールバック。
輪ゴムを外します。
現在の Figure を保存します。
[非推奨] 現在のカーソルを
Cursors
列挙値の 1 つに設定します。バックエンドで必要な場合、このメソッドは、カーソルが設定された後、バックエンド イベント ループで更新をトリガーする必要があります。このメソッドは、たとえば、GUI が更新されない長時間実行タスクの前に呼び出される可能性があるためです。
ノート
バージョン 3.5 以降非推奨:
FigureCanvasBase.set_cursor
代わりに使用してください。
戻る/進むボタンを有効または無効にします。
ツールバーまたはステータス バーにメッセージを表示します。
Axes スタックをリセットします。
- 例外 matplotlib.backend_bases。NonGuiException [ソース] #
拠点:
Exception
非 GUI バックエンドで Figure を表示しようとすると発生します。
- クラス matplotlib.backend_bases. PickEvent ( name , canvas , mouseevent , artist , guiEvent = None , ** kwargs ) [source] #
拠点:
Event
抽選イベント。
このイベントは、 で選択可能になっているアーティストに十分近いキャンバス上の場所をユーザーが選択すると発生し
Artist.set_picker
ます。PickEvent には、親
Event
クラスで定義された属性に加えて、いくつかの特別な属性があります。例
on_pick()
ピックされたデータ ポイントの座標を出力する関数をピック イベントにバインドします。ax.plot(np.rand(100), 'o', picker=5) # 5 points tolerance def on_pick(event): line = event.artist xdata, ydata = line.get_data() ind = event.ind print('on pick line:', np.array([xdata[ind], ydata[ind]]).T) cid = fig.canvas.mpl_connect('pick_event', on_pick)
- 属性:
- マウスイベント
MouseEvent
ピックを生成したマウス イベント。
- アーティスト
matplotlib.artist.Artist
選ばれたアーティスト。デフォルトでは、アーティストは選択できないことに注意してください (「 」を参照
Artist.set_picker
)。- 他の
選択したオブジェクトのタイプによっては、追加の属性が存在する場合があります。たとえば、
Line2D
pick は pick とは異なる追加の属性を定義する場合がありますPatchCollection
。
- マウスイベント
- クラス matplotlib.backend_bases. RendererBase [ソース] #
拠点:
object
描画/レンダリング操作を処理する抽象基本クラス。
以下のメソッドは、完全な機能を実現するためにバックエンドに実装する必要があります (ただし、単独で実装する
draw_path
だけでも非常に有能なバックエンドが得られます)。最適化の理由から、次のメソッドをバックエンドに実装する必要があります。
- draw_gouraud_triangle ( gc , points , colors , transform ) [source] #
グーロー シェーディングの三角形を描画します。
- パラメータ:
- GC
GraphicsContextBase
グラフィックス コンテキスト。
- ポイント(3, 2) 配列のような
三角形の (x, y) 点の配列。
- 色(3, 4) 配列のような
三角形の各点の RGBA カラー。
- 変身
matplotlib.transforms.Transform
ポイントに適用するアフィン変換。
- GC
- draw_gouraud_triangles ( gc、 triangles_array、 colors_array、 transform ) [source] #
一連のグーロー三角形を描きます。
- パラメータ:
- ポイント(N, 3, 2) 配列のような
三角形のN (x, y) ポイントの配列。
- 色(N, 3, 4) 配列のようなもの
三角形の各ポイントのN RGBA カラーの配列。
- 変身
matplotlib.transforms.Transform
ポイントに適用するアフィン変換。
- draw_image ( gc , x , y , im , transform = None ) [source] #
RGBA イメージを描画します。
- パラメータ:
- GC
GraphicsContextBase
クリッピング情報を含むグラフィック コンテキスト。
- xスカラー
キャンバスの左側からの物理単位 (つまり、ドットまたはピクセル) での距離。
- yスカラー
キャンバスの下側からの物理単位 (つまり、ドットまたはピクセル) での距離。
- im (N, M, 4) np.uint8 の配列のようなもの
RGBA ピクセルの配列。
- 変身
matplotlib.transforms.Affine2DBase
option_scale_image
が を返すように具体的なバックエンドが記述されている場合にのみTrue
、アフィン変換 (つまりAffine2DBase
)をに渡すことができますdraw_image
。変換の平行移動ベクトルは、物理単位 (つまり、ドットまたはピクセル) で指定されます。変換はxとyをオーバーライドせず、結果をxとyで変換する前に適用する必要があることに注意してください (これは、 transformで定義された変換ベクトルにx とyを追加することで実現できます)。
- GC
- draw_markers ( gc , marker_path , marker_trans , path , trans , rgbFace = None ) [source] #
pathの各頂点 (制御点を除く)にマーカーを描画します。
基本 (フォールバック) 実装は、 を複数回呼び出します
draw_path
。バックエンドは、マーカーを一度だけ描画して複数回再利用するために、このメソッドをオーバーライドしたい場合があります。- パラメータ:
- GC
GraphicsContextBase
グラフィックス コンテキスト。
- マーカートランス
matplotlib.transforms.Transform
マーカーに適用されるアフィン変換。
- トランス
matplotlib.transforms.Transform
パスに適用されるアフィン変換。
- GC
- draw_path_collection ( gc , master_transform , paths , all_transforms , offsets , offset_trans , facecolors , edgecolors , linewidths , linestyles , antialiaseds , urls , offset_position ) [source] #
パスのコレクションを描画します。
各パスはまずall_transforms ((3, 3) 行列のリスト) の対応するエントリによって変換され、次に master_transformによって変換されます。次に、 offset_transによって最初に変換された、offsetsの対応するエントリによって変換されます。
facecolors、edgecolors、linewidths、linestyles 、および antialiasedは、対応するプロパティを設定するリストです。
offset_positionは現在使用されていませんが、後方互換性のために引数が保持されています。
基本 (フォールバック) 実装は、 を複数回呼び出します
draw_path
。バックエンドは、パス データの各セットを 1 回だけレンダリングし、そのパスをさまざまなオフセット、色、スタイルなどで複数回参照するために、これをオーバーライドすることができます。ジェネレーター メソッド_iter_collection_raw_paths
と_iter_collection
は、実装を支援 (および標準化) するために提供されています。バックエンド全体。draw_path_collection
の動作をグローバルに変更できるように、これらのジェネレータを使用することを強くお勧めします。
- draw_quad_mesh ( gc , master_transform , meshWidth , meshHeight ,座標,オフセット, offsetTrans , facecolors , antialiased , edgecolors ) [source] #
クアッドメッシュを描画します。
ベース (フォールバック) 実装は、quadmesh をパスに変換してから を呼び出します
draw_path_collection
。
- draw_text ( gc , x , y , s , prop , angle , ismath = False , mtext = None ) [source] #
テキスト インスタンスを描画します。
- パラメータ:
- GC
GraphicsContextBase
グラフィックス コンテキスト。
- ×フロート
表示座標におけるテキストの x 位置。
- yフロート
表示座標におけるテキスト ベースラインの y 位置。
- s str
テキスト文字列。
- 小道具
matplotlib.font_manager.FontProperties
フォントのプロパティ。
- アングルフロート
反時計回りの回転角度 (度単位)。
- マルチテキスト
matplotlib.text.Text
レンダリングする元のテキスト オブジェクト。
- GC
ノート
バックエンドの実装者への注意:
バウンディング ボックスが正しく作成されているかどうか (これにより、テキストのレイアウト/配置が適切に機能するようになります) を判断しようとしている場合は、text.py の行を変更すると役立ちます。
if 0: bbox_artist(self, renderer)
if 1 にすると、実際の境界ボックスがテキストと共にプロットされます。
- get_image_magnification ( ) [ソース] #
に渡されたイメージを拡大する係数を取得し
draw_image
ます。バックエンドが他のアーティストとは異なる解像度の画像を持つことを許可します。
- get_texmanager ( ) [ソース] #
インスタンスを返し
TexManager
ます。
- get_text_width_height_descent ( s , prop , ismath ) [source] #
propを使用し て、文字列sの幅、高さ、およびディセント (下からベースラインまでのオフセット) を表示座標で取得します。
FontProperties
- new_gc ( ) [ソース] #
のインスタンスを返します
GraphicsContextBase
。
- open_group ( s , gid = None ) [ソース] #
ラベルsとgid (設定されている場合) を id としてグループ化要素を開きます。
SVG レンダラーでのみ使用されます。
- option_image_nocomposite ( ) [ソース] #
Matplotlib による画像合成をスキップするかどうかを返します。
通常、ラスター バックエンドは False を返す必要があります (C レベルのラスタライザーが画像構成を処理できるようにします)。通常、ベクター バックエンドは を返す必要があります。
not rcParams["image.composite_image"]
- option_scale_image ( ) [ソース] #
の任意のアフィン変換
draw_image
がサポートされているかどうかを返します (ほとんどのベクター バックエンドで True)。
- points_to_pixels (ポイント) [ソース] #
ポイントを表示単位に変換します。
この関数をオーバーライドする必要があります (ポストスクリプトや svg など、バックエンドに dpi がない場合を除きます)。一部のイメージング システムでは、1 インチあたりのピクセル数に次のような値が想定されます。
points to pixels = points * pixels_per_inch/72 * dpi/72
- パラメータ:
- ポイントfloat または array-like
float または float の numpy 配列
- 戻り値:
- ピクセルに変換されたポイント
- start_rasterizing ( ) [ソース] #
ラスター レンダラーに切り替えます。
によって使用され
MixedModeRenderer
ます。
- stop_filter ( filter_func ) [ソース] #
元のレンダラーに切り替えます。一時的なレンダラーのコンテンツは、filter_funcで処理され、元のレンダラーに画像として描画されます。
現在、agg レンダラーでのみサポートされています。
- stop_rasterizing ( ) [ソース] #
ベクター レンダラーに戻り、ラスター レンダラーの内容をベクター レンダラーのイメージとして描画します。
によって使用され
MixedModeRenderer
ます。
- クラス matplotlib.backend_bases. ResizeEvent (名前,キャンバス) [ソース] #
拠点:
Event
キャンバスのサイズ変更によってトリガーされるイベント。
ResizeEvent には、親
Event
クラスで定義された属性に加えて、いくつかの特別な属性があります。- 属性:
- 幅の整数
キャンバスの幅 (ピクセル単位)。
- 高さの整数
キャンバスの高さ (ピクセル単位)。
- クラス matplotlib.backend_bases. ShowBase [ソース] #
拠点:
_Backend
show()
バックエンドで関数を生成する単純な基本クラス。サブクラスは
mainloop()
メソッドをオーバーライドする必要があります。
- クラス matplotlib.backend_bases. TimerBase (間隔=なし、コールバック=なし) [ソース] #
拠点:
object
タイマー イベントを提供するための基本クラスで、アニメーションに役立ちます。バックエンドは、タイマー イベントがイベント ループに統合されるように独自のタイミング メカニズムを使用するために、いくつかの特定のメソッドを実装する必要があります。
サブクラスは、次のメソッドをオーバーライドする必要があります。
_timer_start
: タイマーを開始するためのバックエンド固有のコード。_timer_stop
: タイマーを停止するためのバックエンド固有のコード。
サブクラスは、さらに次のメソッドをオーバーライドできます。
_timer_set_single_shot
: タイマー オブジェクトでサポートされている場合、タイマーをシングル ショット動作モードに設定するためのコード。そうでない場合は、Timer
クラス自体がフラグを格納し、その_on_timer
ような動作をサポートするためにメソッドをオーバーライドする必要があります。_timer_set_interval
: タイマー オブジェクトに間隔を設定するためのメソッドがある場合、タイマーに間隔を設定するためのコード。_on_timer
: 任意のタイマー オブジェクトが呼び出す必要がある内部関数。設定されているすべてのコールバックを実行するタスクを処理します。
- パラメータ:
- 間隔int、デフォルト: 1000ms
ミリ秒単位のタイマー イベント間の時間。として保存され
timer.interval
ます。- コールバックリスト[tuple[callable, tuple, dict]]
タイマーイベントで呼び出される (func, args, kwargs) タプルのリスト。このリストは as としてアクセス可能で
timer.callbacks
、直接操作することも、関数add_callback
およびremove_callback
を使用することもできます。
- add_callback ( func , * args , ** kwargs ) [source] #
イベントが発生したときにタイマーによって呼び出される関数を登録します。指定された追加の引数はすべてfuncに渡されます。
この関数はfuncを返すため、デコレータとして使用できます。
- プロパティ 間隔#
タイマー イベント間の時間 (ミリ秒単位)。
- remove_callback ( func , * args , ** kwargs ) [source] #
コールバックのリストからfuncを削除します。
argsとkwargsはオプションであり、異なる引数で呼び出されるように登録された同じ関数のコピーを区別するために使用されます。この動作は非推奨です。将来的には考慮されなくなります。特定のコールバックをそれ自体で取り外し可能な状態に保つには、それをオブジェクトとしてに渡します。
*args, **kwargs
add_callback
functools.partial
- プロパティ single_shot #
1 回の実行後にこのタイマーを停止するかどうか。
- クラス matplotlib.backend_bases. ToolContainerBase ( toolmanager ) [ソース] #
拠点:
object
ツールバーなど、すべてのツール コンテナーの基本クラス。
- 属性:
- ツールマネージャー
ToolManager
これ
ToolContainer
が通信したいツール。
- ツールマネージャー
- add_tool (ツール,グループ,位置= -1 ) [ソース] #
このコンテナにツールを追加します。
- パラメータ:
- ツールtool_like
追加するツール。 を参照してください
ToolManager.get_tool
。- グループ文字列
このツールを追加するグループの名前。
- 位置int、デフォルト: -1
このツールを配置するグループ内の位置。
- add_toolitem ( name , group , position , image , description , toggle ) [source] #
コンテナにツールアイテムを追加します。
このメソッドは、バックエンドごとに実装する必要があります。
ボタン クリック イベントに関連付けられたコールバックは、正確
self.trigger_tool(name)
に である必要があります。
- remove_toolitem (名前) [ソース] #
からツールアイテムを削除し
ToolContainer
ます。このメソッドは、バックエンドごとに実装する必要があります。
を発行するときに呼び出され
ToolManager
ますtool_removed_event
。- パラメータ:
- 名前文字列
削除するツールの名前。
- matplotlib.backend_bases. button_press_handler (イベント、キャンバス=なし、ツールバー=なし) [ソース] #
追加のマウス ボタンに対するデフォルトの Matplotlib ボタン アクション。
イベントが である
key_press_handler
ことを除いて、パラメータは と同じです。MouseEvent
- matplotlib.backend_bases. get_registered_canvas_class ( format ) [ソース] #
指定されたファイル形式の登録済みデフォルト キャンバスを返します。必要なバックエンドの遅延インポートを処理します。
- matplotlib.backend_bases. key_press_handler (イベント、キャンバス=なし、ツールバー=なし) [ソース] #
ナビゲーション キーボード ショートカットで説明されているキャンバスとツールバーの既定の Matplotlib キー バインドを実装します。
- パラメータ:
- イベント
KeyEvent
キーのプレス/リリース イベント。
- キャンバス
FigureCanvasBase
、デフォルト:event.canvas
バックエンド固有のキャンバス インスタンス。このパラメータは下位互換性のために保持されていますが、設定されている場合は常に と等しい必要があります
event.canvas
。- ツールバー
NavigationToolbar2
、デフォルト:event.canvas.toolbar
ナビゲーション カーソル ツールバー。このパラメータは下位互換性のために保持されていますが、設定されている場合は常に と等しい必要があります
event.canvas.toolbar
。
- イベント