タイトル: matplotlib の中国語文字化けの一般的なエラーを修正する方法の詳細な説明
本文:
Matplotlib を使用してグラフを描画すると、中国語が文字化けします文字が頻繁に発生する グラフのラベル、タイトル、軸のフォントが正しく表示されないなどの問題。この問題は主に、Matplotlib のデフォルト フォントが中国語の文字をサポートしていないことが原因で発生します。この記事では、この問題を解決するために役立ついくつかの一般的な方法について詳しく説明します。
方法 1: Matplotlib の rcParams を変更する
Matplotlib には、グローバル フォントの設定に使用できる rcParams パラメーターが用意されています。このパラメータを変更することで、中国語をサポートするフォントを指定できます。
一般的に、SimHei、STSong、Microsoft YaHei など、一般的に使用される中国語フォントを選択できます。 rcParams を変更する前に、システム内のこれらのフォントのインストール パスを決定する必要があります。次のコードを使用して表示できます。
import matplotlib.font_manager as fm fonts = fm.fontManager.ttflist for font in fonts: print(font.name, font.fname)
「SimHei」などのフォントの名前を選択し、そのフル パスをコピーします。次に、グラフを描画する前に、次のコードを使用して rcParams パラメーターを設定します。
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei']
方法 2: カスタム フォント ファイルを使用する
システムに適切な中国語フォントがない場合は、次のことができます。また、対応するフォント ファイルをダウンロードし、Matplotlib のフォント ディレクトリに追加します。
まず、適切なリソース Web サイトからフォント ファイル (「SimHei.ttf」など) をダウンロードします。次に、Matplotlib のフォント ディレクトリを見つけます。このディレクトリは、次のコードを使用して見つけることができます。
import matplotlib as mpl print(mpl.get_cachedir())
フォント ファイルをこのディレクトリにコピーし、グラフを描画する前に次のコードを使用してカスタム フォントを登録します。
import matplotlib.font_manager as fm fm.fontManager.addfont('/path/to/SimHei.ttf')
次に、フォントを使用するように rcParams パラメーターを設定します。
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei']
方法 3: システム フォントを使用する
システムに適切な中国語フォントがすでにある場合は、システムフォントを直接使用してグラフを描画できます。
まず、次のコードを使用して、システムにインストールされているフォントを確認します。
import matplotlib.font_manager as fm fonts = fm.fontManager.ttflist for font in fonts: print(font.name)
「Microsoft Yahei」などのフォント名を選択し、次のコードを使用して rcParams パラメーターを設定します。チャートを描く前に :
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['微软雅黑']
このようにして、システム フォントを使用して中国語を正常に表示することができます。
上記の方法は、Mac と Linux システムでは若干異なる場合があることに注意してください。具体的な状況は、システムの違いに応じて調整できます。
中国語の文字化け問題を修正した後、Matplotlib で中国語の文字を正常に使用できるようになりました。以下は、中国語のタイトルとラベルを含む折れ線グラフを描画する簡単なサンプル コードです:
import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei'] x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.plot(x, y) plt.title('中文标题') plt.xlabel('横轴') plt.ylabel('纵轴') plt.show()
上記の方法により、Matplotlib の中国語文字化けの問題を簡単に解決し、グラフをより美しく簡単に作成できます。読む。同時に、データ視覚化作業に Matplotlib をより適切に適用できるようになります。
以上が一般的なエラーを解析し、matplotlib の中国語文字化け問題を解決するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。