解决分为两步

step1:从windows字体目录copy中文字体simhei.ttf文件

windows字体目录为:C:\Windows\Fonts

pyhon这边是安装在Ubuntu下面的anaconda虚拟环境中,可以通过代码查看路径:

import os

# 获取 matplotlib 的字体目录
font_dir = os.path.join(matplotlib.get_data_path(), 'fonts', 'ttf')
print(f"字体安装目录:{font_dir}")

我这边是:/home/xxx/anaconda3/envs/uniad/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf/simhei.ttf

复制完毕后进行第二步

step2:在绘图代码中加入中文字体的ttf文件

# --coding:utf-8--
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

# 加载 WenQuanYi Zen Hei 字体
font = FontProperties(fname="/home/xxx/anaconda3/envs/uniad/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf/simhei.ttf")

# 测试完整中文显示(包含“形”等易缺失字符)
plt.figure(figsize=(8, 4))  
plt.plot([1,2,3], [4,1,3], label="测试曲线:形状、数据")
plt.title("中文标题:包含完整字形测试", fontproperties=font)
plt.xlabel("X轴标签(示例字符:形、式、数)", fontproperties=font)
plt.ylabel("Y轴标签", fontproperties=font)
plt.legend(prop=font)  # 图例也需指定字体
plt.show()

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐