2

mathtext を使用して、特別にレンダリングされた図のタイトルを取得しようとしましたが、失敗しました。私のテストタイトルの代わりに、不可解な文字を印刷しただけです. 私は何を間違っていますか?

  • オペレーティング システム: Fedora リリース 18 (Spherical Cow)
  • Python と matplotlib は、公式リポジトリから yum 経由でインストールされます

(完全な)コードは次のとおりです。

import sys
print sys.version             # prints:
                              # 2.7.3 (default, Aug  9 2012, 17:23:57)
                              # [GCC 4.7.1 20120720 (Red Hat 4.7.1-5)]
import matplotlib
print matplotlib.__version__  # prints:
                              # 1.2.0

import matplotlib.pyplot as plt
plt.plot([1,5])
plt.title(r"$1.2345$")
plt.show()

出力画像は次のとおりです。 奇妙なタイトル レンダリング

4

2 に答える 2

4

RedHat、CentOS、またはその他の Fedora の派生製品を使用している場合は、https ://bugzilla.redhat.com/show_bug.cgi?id=562421 で説明されているバグが発生している可能性があります。

「stix」フォント パッケージをインストールしてみてください (CentOS/RedHat では「stix-fonts」です)。~/.matplotlib/fontlist.cache ファイルを削除します。次に、システムのフォント キャッシュ スクリプト (おそらく "fc-cache -f -s -v") を再実行します。

次に、matplotlibrc の設定を次のように変更します (~./matplotlib/matplotlibrc ファイルまたはスクリプトと同じディレクトリにある matplotlibrc ファイルを使用)。

mathtext.fontset : stix 
mathtext.fallback_to_cm : True
mathtext.default : it 

これがうまくいくかどうか知りたいです。

于 2013-02-05T21:44:53.530 に答える
1

どうやらそれはフォント関連のものでした。この問題に対処するための古いバグレポートが見つかりました。

コメントの 1 つの提案は、パッケージをインストールすることでしたlyx-fonts。これで問題は解決しました。


ここで提案されている別の回避策は、(スクリプトの上部で) 次のように数学テキストのレンダリングを構成することです。

plt.rcParams['mathtext.fontset'] = "stix"
于 2013-02-05T21:59:41.120 に答える