matplotlib中文乱码(linux中没有中文字体)
在docker或linux中一劳永逸解决matplotlib中文显示问题
安装
mplfonts的安装方法是pip: $ pip install -U mplfonts
使用
安装好mplfonts之后,需要有一个初始化的配置过程
在终端执行$ mplfonts init即可。
测试
import matplotlib.pyplot as plt
from mplfonts import use_font
FONT_NAMES = {
'Noto Sans Mono CJK SC': 'Noto等宽',
'Noto Serif CJK SC': 'Noto宋体',
'Noto Sans CJK SC': 'Noto黑体',
'Source Han Serif SC': '思源宋体',
'Source Han Mono SC': '思源等宽',
'SimHei': '微软雅黑'
}
def test_chinese():
for font_name, desc in FONT_NAMES.items():
use_font(font_name)
fig = plt.figure(figsize=(4, 1))
ax = plt.Axes(fig, [0., 0., 1., 1.])
ax.set_axis_off()
fig.add_axes(ax)
plt.text(.1, .6, font_name, fontsize=20)
plt.text(.1, .2, desc, fontsize=20)
plt.show()
test_chinese()
参考文献
https://www.cnblogs.com/YeewahChan/p/use_chinese_in_matplotlib.html#:~:text=在docker或linux中一劳永逸解决matplotlib中文显示问题 安装 mplfonts的安装方法是pip%3A %24 pip install -U ,mplfonts%20%E4%BD%BF%E7%94%A8%20%E5%AE%89%E8%A3%85%E5%A5%BDmplfonts%E4%B9%8B%E5%90%8E%EF%BC%8C%E9%9C%80%E8%A6%81%E6%9C%89%E4%B8%80%E4%B8%AA%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84%E9%85%8D%E7%BD%AE%E8%BF%87%E7%A8%8B%20%E5%9C%A8%E7%BB%88%E7%AB%AF%E6%89%A7%E8%A1%8C%20%24%20mplfonts%20init%20%E5%8D%B3%E5%8F%AF%E3%80%82

浙公网安备 33010602011771号