您的位置:首页 > 编程语言 > PHP开发

使用matplotlib作图时中文字符无法正常显示的问题

2020-01-12 15:30 591 查看

今天实习时需要使用python3中的matplotlib库绘制图像完成数据可视化。写完代码运行时发现有中文字符时对应的位置会无法正常显示,而是出现一个小框框。
查阅资料后了解到,matplotlib库的配置文件里面没有中文字体的对应信息,因此会产生这种现象。
一种做法是直接修改配置文件matplotlibrc,这样会较为麻烦,显得比较不方便。采用动态配置的方法可以参照以下代码:

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False #负号显示

其中最后一行用于解决更改成中文字体后负号无法正常显示的问题。

注意:这种方法只在windows平台下适用。

另外也可以用python字体管理器的方式来处理这个问题:

myfont = matplotlib.font_manager.FontProperties(fname='C:/Windows/Fonts/msyh.ttf')
mpl.rcParams['axes.unicode_minus'] = False
  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
lhd005 发布了6 篇原创文章 · 获赞 10 · 访问量 4885 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: