- 外部安裝 mplfonts
pip install mplfonts
mplfonts init
- 代碼調(diào)用CKJ字體
from mplfonts import use_font
use_font('Noto Sans CJK SC')
該方法自動接入CJK中文 韓文 日文等字體,use_font介紹如下:
def use_font(font="Noto Sans CJK SC"):
"""To choose the font that you want to use
Args:
font (str, optional): The font name that you want to use.
Defaults to 'Noto Sans CJK SC'.
"""
matplotlib.rcParams["font.family"] = "sans-serif"
matplotlib.rcParams["font.sans-serif"] = [font, "sans-serif"]
matplotlib.rcParams["axes.unicode_minus"] = False
- 示例與結(jié)果圖
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.figure(figsize=(8, 5))
plt.plot(x, y, label='正弦曲線')
plt.title('這是一個帶中文標題的圖表')
plt.xlabel('橫坐標(時間)')
plt.ylabel('縱坐標(幅度)')
plt.legend()
# plt.grid(True)
plt.show()

結(jié)果圖
x = np.linspace(0, 10, 100)
y = np.log(x)
plt.figure(figsize=(8, 5))
plt.plot(x, y, label='log曲線')
plt.title('這是一個帶中文標題的圖表2')
plt.xlabel('橫坐標(時間)')
plt.ylabel('縱坐標(幅度)')
plt.legend()
plt.show()

結(jié)果圖2
- 其他方法
- (1) 手動下載中文字體"SimHei.ttf",放入"lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf",在每次應(yīng)用時指定
font. - (2)
matplotlib.rcParams['font.sans-serif'] = ['SimHei']方法不可用。