2021-04-30 15:48:17 索煒達電子 6489
pyplot 并不默認支持中文顯示,也沒有自帶中文字體,因此需要自行下載所需字體,并修改 rcParams 參數(shù)來顯示中文。下面以 SimHei (黑體)字體為例進行說明。
說明:系統(tǒng)環(huán)境為 Linux
安裝字體
1.下載 SimHei.ttf 字體文件
2.查看 matplotlib 的字體路徑
import matplotlib
print(matplotlib.matplotlib_fname())
得到的路徑(如~/.local/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc)是 matplotlib 參數(shù)預加載文件matplotlibrc的路徑,則字體的存放路徑為~/.local/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf。
將下載好的字體文件復制到該目錄下
3.刪除 matplotlib 的緩沖目錄
查看 matplotlib 的字體緩存路徑:
import matplotlib
print(matplotlib.get_cachedir())
得到的路徑如~/.cache/matplotlib,在終端使用rm -rf ~/.cache/matplotlib命令刪除緩存目錄。
這樣做之后,在使用 matplotlib 繪圖時,會自動生成新的緩存目錄。
設(shè)置參數(shù)
使用 matplotlib 繪圖時,添加以下幾行代碼:
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family'] = 'SimHei'
matplotlib.rcParams['font.size'] = 10
matplotlib.rcParams['axes.unicode_minus']=False
''' 使用下面語句也可以
plt.rcParams['font.family'] = 'SimHei'
plt.rcParams['font.size'] = 10
plt.rcParams['axes.unicode_minus']=False
'''
這樣就可以在繪圖時使用該中文字體了。
也可以在前面提到的 matplotlibrc 文件中修改這些參數(shù)。這里選擇在代碼中修改。
幾種常用的中文字體: