Python问题总结:关于matplotlib中文字体无法正常显示问题的总结

Python问题总结:关于matplotlib中文字体无法正常显示问题的总结 Python问题总结:关于matplotlib中文字体显示问题的总结1 问题描述2 解决方法2.1 网上提供的方法2.2 补充方法2.3 对Linux系统的进一步补充1 问题描述在使用Matplotlib绘图时如果我们使用中文可能会出现如下情况这种情况的出现是因为matplotlib绘制图像的默认字体不支持中文只要切换为中文字体即可2 解决方法2.1 网上提供的方法网上提供的解决方法大多比较直接如importmatplotlib.pyplotasplt plt.rcParams[font.sans-serif]SimHei或者importmatplotlib matplotlib.rc(font,familySimHei)即修改了字体为SimHei当然也可以改成其它支持中文的字体。这种方式确实是正确的方式至少应用在Windows系统上是基本上没有什么问题的。但是其他如同一些Linux系统可能并不包含这种字体所以这种方法不能适用所有系统2.2 补充方法针对一些中文字体库并不足够丰富的系统我们首先要了解系统中有哪些字体可以在Python执行如下命令查看importmatplotlibforiinmatplotlib.font_manager.fontManager.ttflist:print(i.name)# 这里的i是字体类name是i的属性即字体名称此时再用列出字体中支持中文的字体再作为替换即可2.3 对Linux系统的进一步补充如果不知道哪些字体是支持中文的除了可以网上搜索外在Linux系统中还可以使用如下命令fc-list#该命令用于列举系统中的字体fc-list :langzh#该命令用于列举系统中支持中文的字体第二个命令可以列举出支持中文的字体可以用做替换这样差不多就可以解决大部分的字体问题了