2024年1月25日木曜日

Python 3.12以降で「japanize-matplotlib」がエラーを起こす問題

 Pythonのバージョンを 3.12.1 にアップデートしたら、これまで使っていた日本語化モジュール「japanize-matplotlib」が使えなくなってしまった。


japanize-matplotlibは、matplotlibのフォント設定を自動で日本語化するモジュールで、便利に使っていた。


先日、Pythonのバージョンが古くなってしまったのに気づき、最新版にアップデートした。バージョンは 3.12.1 である。


グラフ作成のプログラムを作成する勉強をしていたのだが、エラーメッセージが出てしまう。


調べてみると、japanize-matplotlibの作成者が、Pythonのバージョン 3.12 に対応してくれていないようだ。作成者が忙しい場合とか、対応するのを何らかの理由でやめてしまった場合に発生する。こういうケースはよくある。


インターネットでいろいろ検索したり、Google Bardで調べたりしたのだが、推奨されている対応をいくつか試してみても、良い結果が得られなかった。


結局、Pythonのインストールをやり直し、バージョン 3.11.3 をインストールしたら、問題は解決した。バージョン 3.11 までは対応してくれていたようだ。


その後、もう少し調べてみると、別の方が「japanize-matplotlib」の代わりになるものを作成してくれているのを見つけた。


『[Proposal] Python 3.12以降への対応 #26』という表題の記事である。以下のところにある。

https://github.com/uehara1414/japanize-matplotlib/issues/26


その中で記事の下の方に、「作者の方がご多忙なのかメンテナンスされていないようなので、forkして別パッケージとして公開しました。」というコメントが入っているのを見つけた。


その代わりのモジュールは、「matplotlib-fontja」という名前である。このモジュールの使い方と注意事項は以下のリンク先にある。


Pythonの現在の最新バージョンでは確認していないが、バージョン 3.11.3 で確認してみたが、エラーは発生せず、希望通り動いた。CHGLOGを見ると、Python 3.12 に対応と出ている。2024年1月4日の日付で、「Python 3.7以降とMatplotlib 3.0以降の各バージョンに対するテストを追加」とある。




0 件のコメント:

コメントを投稿

スマホの写真をパソコンに保存する方法 - Googleフォト編

 スマホで撮った写真、どんどん増えていきますよね。機種変更のタイミングや、万が一スマホが壊れてしまったときのために、パソコンにバックアップしておくと安心です。 Googleフォトを使えば、スマホの写真を簡単にパソコンにダウンロードできます。今回はその方法をステップごとにご紹介しま...