Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

フォントが自動的に指定されるようにデフォルトのフォントを指定したい【matplotlib】

pythonコード内で毎回指定する方法はよくある

デフォルトを変更したかったので、あれこれ試行錯誤したメモを残しておく

shellの環境変数で指定する方法

ここでは、shellの環境変数で指定する方法をメモしておく

MATPLOTLIBRC=/home/hoge/hoge/data

みたいな感じで環境変数に指定できるみたい

設定ファイルを$HOME以下に置く方法

~/.local/share/fonts/

という場所にmatplotlibのフォント関係の設定ファイルを置くことも考えたけどうまく行かなかった

mkdir -p ~/.local/share/fonts
cp "$CONDA_PREFIX"/fonts/Roboto-*.ttf ~/.local/share/fonts/
fc-cache -f -v
rm -rf ~/.cache/matplotlib

みたいな感じでRobotoというフォントをコピーしてみたがダメだった

fc-cache -f -v

はfontconfigのキャッシュを更新できる

追加できたかどうかは、

fc-list | grep -i roboto | head

で見れる

pythonコードで、Matplotlibのキャッシュファイルの場所を調べる方法

import matplotlib as mpl
print(mpl.get_cachedir())

これで、どこの設定ファイルを見ているか判断できる

デフォルトのフォントの場所がわかる

import matplotlib as mpl
print(mpl.matplotlib_fname())

ランキング参加中です

↓クリックしていただけると嬉しいです〜