Python操作Excel|Part 9: 画图无法输出中文?一键解决!
- 2026-09-27 03:43:47
Python操作Excel|Part 9: 画图无法输出中文?一键解决!经常用matplotlib或者其他包画图之后无法输出中文图例,因此整理一下必成的方法。 通常我们的系统里都是有中文字体的(毕竟我们其他很多地方都要用到中文),因此我们只是需要找到这些中文字体的路径从而调用即可。上代码! 第一步:找到系统里可用的中文字体 第二步:调用上述路径字体即可! 注意这里一定要放在画图代码前面 然后就可以写画图的代码啦! 
from matplotlib import font_manager# 这里我设置了我觉得可用的备选字体,大家可以添加或者删减candidates = ["PingFang","Heiti","STHeiti","Songti","Hiragino","Arial Unicode"]font_path = None # 先设置一个默认值# 然后开始一个一个去找有没有这个字体并输出目前电脑里有的字体所在路径for f in font_manager.findSystemFonts(fontpaths=None, fontext="ttf"):for name in candidates:if name.lower() in f.lower():font_path = fbreakif font_path:breakif font_path is None:raise RuntimeError("未找到任何可用中文字体")# 如果没有找到可用的字体,那么就去下载相应字体就好,但是我觉得很少会一个都找不到。font = font_manager.FontProperties(fname=font_path)print("使用字体:", font_path) # 就可以输出字体所在路径如下:# 使用字体: /System/Library/Fonts/Hiragino Sans GB.ttc
font_path = "/System/Library/Fonts/STHeiti Medium.ttc"font = font_manager.FontProperties(fname=font_path)
plt.figure()plt.plot([1, 2, 3],[1, 4, 9], label="测试曲线")plt.title("中文显示测试", fontproperties=font)plt.legend(prop=font)plt.show()

本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。