Matplotlibにnon - [〜#〜] ascii [〜#〜] 文字を表示する際に問題があります。これらの文字は適切なフォントではなく小さなボックスとしてレンダリングされます。それらを強調するために赤いペイントで):
どうすれば修正できますか?
関連する質問はMatplotlibのアクセント記号付き文字です。
この問題には、実際にはいくつかの異なる原因があります。
デフォルトのフォントにはこれらのグリフは含まれません
以下を使用してデフォルトのフォントを変更できます(プロットが行われる前に!)
matplotlib.rc('font', family='Arial')
Matplotlibの一部のバージョンでは、ファミリを設定する必要があります。
matplotlib.rc('font', **{'sans-serif' : 'Arial',
'family' : 'sans-serif'})
(sans-serif
には**{}
構文内にハイフンが含まれているため、実際に必要であることに注意してください。)
最初のコマンドはsans-serif
フォントファミリーを1つのフォントのみを含むように変更し(私の場合は Arial )、2番目のコマンドはデフォルトのフォントファミリーをsans-serif
に設定します。
他のオプションが含まれています ドキュメント内 。
文字列オブジェクトをMatplotlibに不適切に作成/渡しました
フォントに適切なグリフが含まれている場合でも、u
を使用して nicode 定数を作成するのを忘れた場合、Matplotlibには次の動作があります。
plt.xlabel("Średnia odległość między stacjami wsparcia a modelowaną [km]")
したがって、u
を追加する必要があります。
plt.xlabel(u"Średnia odległość między stacjami wsparcia a modelowaną [km]")
別の原因は、ファイルの先頭に TF-8 マジックコメントを置くのを忘れたことです(この 問題の原因である可能性があります ):
# -*- coding: utf-8 -*-
jb.
の答えは十分です。 u
の追加を避けたい場合は、これを使用してください
from __future__ import unicode_literals