LinuxでMatplotlibハングルフォントを設定する
6714 ワード
ブログ参照 新しい環境でmatplotlibを使うとハングルフォントがなく、毎回設定するので面倒です. 複数のブログを探さないようにまとめた 上記のコードを入力するとmatplotlibの経路がわかります.
ここで移動したフォルダは、自分の都合でパスを指定できます. 以上のコードで削除する 以上のコードが
・ ・ 上記のコードを適用することで、マイナスのフォントが破られることを防止できます.
0)コピーされた完全なコード
bash
apt-get install fonts-nanum*
fc-cache -fv
python -c "import matplotlib; print(matplotlib.__file__)"
cp /usr/share/fonts/truetype/nanum/Nanum* /opt/conda/envs/project/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf/
rm -rf ~/.cache/matplotlib/*
python
import matplotlib.font_manager
font_list = matplotlib.font_manager.findSystemFonts(fontpaths=None, fontext='ttf')
[matplotlib.font_manager.FontProperties(fname=font).get_name() for font in font_list if 'Nanum' in font]
\
import matplotlib.pyplot as plt
plt.rc('font', family='NanumGothicCoding')
\
import matplotlib as mpl
mpl.rcParams['axes.unicode_minus'] = False
1)区切りフォントのインストール
[sudo] apt-get install fonts-nanum*
2)フォントキャッシュの削除
fc-cache -fv
3)matplotlibパスのチェック
python -c "import matplotlib; print(matplotlib.__file__)"
4)フォントのコピー
cp /usr/share/fonts/truetype/nanum/Nanum* /opt/conda/envs/project/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf/
/usr/share/fonts/truetype/nanum/
パスに設定されているNanum
フォントを(3)で確認したmatplotlib
このパスのttf
フォルダに移す.5)Matplotlibフォントキャッシュの削除
rm -rf ~/.cache/matplotlib/*
matplotlib
のフォントキャッシュ.6)フォントリストのチェック
import matplotlib.font_manager
font_list = matplotlib.font_manager.findSystemFonts(fontpaths=None, fontext='ttf')
[matplotlib.font_manager.FontProperties(fname=font).get_name() for font in font_list if 'Nanum' in font]
python
で実行され、適用されるNanum
フォントの名前が特定されます.7)グローバルフォントの適用
import matplotlib.pyplot as plt
plt.rc('font', family='NanumGothicCoding')
使用plt.rc
フォントをグローバルに変更できます.family
の因子で、(6)で確認したフォント名を入れて、ハングルフォントを使うことができます.etc)負の値が破られた場合
import matplotlib as mpl
mpl.rcParams['axes.unicode_minus'] = False
Reference
この問題について(LinuxでMatplotlibハングルフォントを設定する), 我々は、より多くの情報をここで見つけました https://velog.io/@redgreen/Linux-linux에서-Matplotlib-한글폰트-설정하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol