1

スクリーンショット:

ここに画像の説明を入力してください

この問題の原因は何ですか:Cygwinの問題、wx / wxPythonの問題、またはMatplotlibの問題ですか?

すべてのプロットでボタンの画像が欠落しているというこのエラーが表示されることを除けば、すべてが正常に機能します


翌日:ネイティブのWindowsグラフィックインターフェイスを使用するようにwxをコンパイルしたので(Xサーバーとgtkをインストールする必要はありません)、基本的にはWindowsコンパイル(Cygwinコンパイルではありません)であるため、CygwinパッケージはCygwinPOSIXパスを使用できます。

このように問題があるのはMPLだけではなく、Cygwinリソースをファイル名としてwxに渡すwxパッケージです。回避策の1つは、パスの代わりにpythonオブジェクトを渡すことです。したがって、上記の例では、これは次のような回避策になります。

Matplotlibは_load_bitmap(filename as str)関数を使用して、これらのボタンのグラフィックをwxからwxに渡しますwx.Bitmap(filename)。このようなパッチbackend_wx.py

#   bmp = wx.Bitmap(bmpFilename)

    wxf = open(bmpFilename, 'rb')
    bmp = wx.BitmapFromImage(wx.ImageFromStream(wxf, wx.BITMAP_TYPE_ANY))
    wxf.close()

Matplotlibでこれを解決し、問題なく実行されます

すべてのwxアプリケーションで機能するより堅牢なソリューションに興味があります

4

0 に答える 0