これは一般的なPythonTkinterの質問であり、必ずしもmatplotlibの質問ではない可能性があります。
そのため、私はMatplotlib "TkAgg"バックエンド(TkInterを使用したTkキャンバスへのAggレンダリング)を使用して、matplotlib上にプロット機能のかなり大きなスイートを開発している最中です。matplotlibが提供するデフォルトのズーム機能の一部をすぐに使用しています...具体的には、デフォルトのmatplotlibツールバーの[Zoomtobox]ボタンです。既存の「matplotlib.backends.backend_tkagg.NavigationToolbar2TkAgg」クラスをサブクラス化して、独自のツールバーを作成しています。
ここでの問題は、「Zoomtobox」が使用するデフォルトのアイコン(Tkinterの「tcross」)が嫌いなことです。別のTkinter組み込みカーソルを使用する方法を理解しました(たとえば、これによりカーソルが「tcross」ではなく「plus」に変更されます)。
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.backend_bases
import matplotlib.backends.backend_tk_agg
matplotlib.backends.backend_tkagg.cursord[matplotlib.backend_bases.cursors.SELECT_REGION] = "plus"
そして一般的に、現在のマウスカーソルをツールバークラスの組み込みのTkinterカーソルの1つに変更するには、次のように呼び出すことができます。
self.window.configure(cursor="cursor_name")
ですから、私が本当に望んでいるのは、ユーザーが「ズームモード」のときに虫眼鏡アイコンを使用できるようにすることです。使用したい虫眼鏡アイコンの.ppmとすべてがすでにありますが、虫眼鏡をマウスカーソルアイコンとして使用する方法を一生理解できません。Python Tkinterでカスタム画像をマウスカーソルとして使用することは可能ですか?ヘルプ!
プラットフォームに関する注意:これはMac OS X 10.5以降、RedHat Enterprise Linux 5、場合によってはSolaris 10で機能する必要があるため、プラットフォーム固有のソリューションは望ましくありません。