1.背景

python matplotlib.plt 使用 plt.title 写标题时,标题显示为方框,无法正常显示中文,而且基本上在一台新的服务器上配置python开发环境都会遇到这种问题,因此写个文章记录一下。
画图不显示中文的问题如下:

2.解决方案

引入以下代码配置

mpl.style.use('seaborn')
plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文字体设置-黑体
plt.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题
sns.set(font='SimHei',font_scale=1.5)

如果添加后运行代码无 findfont: Font family [‘SimHei’] not found 报错且正常显示中文,那很奈斯,后面的就不用操作了,如果添加后显示如下报错则革命尚未成功,同志仍需努力:


findfont: Font family ['SimHei'] not found. Falling back to DejaVu Sans.
/Users/xxx/miniforge3/envs/macm1tf/lib/python3.8/site-packages/matplotlib/backends/backend_agg.py:240: RuntimeWarning: Glyph 23089 missing from current font.

上述报错代表 matplotlib 库内没有 SimHei 字体,所以需要下载相关文件,SimHei 就是最常见的黑体。

三.安装 SimHei.ttf 并配置 matplotlib

3.1 下载 SimHei.ttf

下载地址: SimHei.ttf 下载地址 ,进入界面下载对应文件即可,如果下载失败也可以留下邮箱,我看到就发一下

3.2 具体配置过程

拷贝 SimHei.ttf 到 matplotlib 的 font 文件夹

打开终端工作台,查看font 文件夹 路径

(base) w16059@wangshuangshuang059 ~ % python
Python 3.9.16 (main, Jan 11 2023, 10:02:19)
[Clang 14.0.6 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more
>>> import matplotlib
>>> matplotlib.matplotlib_fname()
'/Users/w16059/miniconda3/lib/python3.9/site-packages/matplotlib/mpl-data/matplotlibrc'
>>>
KeyboardInterrupt

执行下述命令拷贝 SimHei.ttf 到 font 文件夹:

然后修改 Matplotlib 配置

打开配置文件

vi /Users/xxxx/miniforge3/envs/macm1tf/lib/python3.8/site-packages/matplotlib/mpl-data/matplotlibrc

  • 修改1 :去掉 font.family 前的 # 号 (256行附近)

  • 修改2:去掉 font.sans-serif 的 # 号,并加入 SimHei (260行附近)

  • 修改3:axes.unicode_minus 修改为 False (405行附近)

修改后 wq 即可,配置文件修改完毕。

最后清除 Matplotlib 缓存

rm -r /Users/xxx/.matplotlib

最后测试成功

环境搭建:使用python matplotlib画图不显示中文问题解决相关推荐

  1. python matplotlib 画图 不显示中文 中文乱码 设置中文字体

    在使用python matplotlib 画图时,由于matplotlib 默认是使用DejaVu Sans这种字体,不支持中文,所以我们在使用matplotlib画图包含中文内容要显示时就会变成方框 ...

  2. python画图显示中文_Python的matplotlib库画图不能显示中文问题解决

    有两种解决办法: 一种是在代码里设置为能显示中文的字体,如微软雅黑(msyh.ttf)和黑体(simsun.ttc) 如下在要画图的代码前添加: import matplotlib.pyplot as ...

  3. Python的matplotlib库画图不能显示中文问题解决

    Python的matplotlib库画图不能显示中文问题解决 参考文章: (1)Python的matplotlib库画图不能显示中文问题解决 (2)https://www.cnblogs.com/CQ ...

  4. RuntimeWarning: Glyph 30452 missing from current font. matplotlib画图无法显示中文

    matplotlib画图无法显示中文 RuntimeWarning: Glyph 30452 missing from current font. plt画图的title显示的中文是方括号 错误图: ...

  5. Python matplotlib绘图如何显示中文的问题【有报错没有解决】

    一文详解matplotlib的配置文件以及配置方式 主要介绍路径问题和配置文件相关介绍 linux安装字体库(simSun为例)可以在终端中显示中文 Matlab绘图中下标.斜体及希腊字母的使用方法 ...

  6. Python+matplotlib绘图时显示中文的设置方法

    封面图片:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情: =================== 在使用Python+mat ...

  7. anaconda下python中matplotlib画图无法显示中文

    第一步:在自己电脑里选择喜欢的字体,搜索位置为C:\Windows\Fonts,我选择的是SimSun 第二步 查找Matplotlib默认字体目录 打开anaconda prompt,输入pytho ...

  8. python画图中文显示_解决Linux系统中python matplotlib画图的中文显示问题

    最近想学习一些python数据分析的内容,就弄了个爬虫爬取了一些数据,并打算用Anaconda一套的工具(pandas, numpy, scipy, matplotlib, jupyter)等进行一些 ...

  9. 解决Linux系统中python matplotlib画图的中文显示问题

    解决Linux系统中python matplotlib画图的中文显示问题 参考文章: (1)解决Linux系统中python matplotlib画图的中文显示问题 (2)https://www.cn ...

最新文章

  1. JavaScript 技术篇-JSON字符串在线快速格式化查看实例演示,json.cn网址格式化json字符串
  2. 微信小程序的搜索和重置功能
  3. 初步了解Redis Streams以及如何在Java中使用它们
  4. 【ASP.NET】基础补习之验证控件
  5. web前端的主要学习什么,2020年还有前途吗?一般工资是多少?
  6. Android Studio 编译异常Could not execute build using Gradle installation解决办法
  7. python学习浅谈(python2.x以及python3.x的区别、IDE)
  8. Thread_多线程
  9. linux 查看是32位还是64位
  10. 易如意php,易如意网络验证系统1.1【开源】
  11. 视觉SLAM十四讲第十一讲
  12. Cts框架解析(19)-设备状态的分类以及恢复模式的分类
  13. visio2003中、origin中、matlab中,字体的大小以pt为单位,与word中的几号字大小是如何对应?
  14. 想知道添加水印的软件哪个好?这2款软件简单又实用
  15. IE,谷歌访问跨域问题
  16. 免费的PHP在线解密工具源码
  17. 【Busybox】Busybox源码分析-04 | ash和login程序
  18. 作为荣耀脱离华为后的第二代旗舰,荣耀Magic4 Pro是否值得选购?
  19. 大厂 Java 后端经典面试题:Redis 为什么这么快?
  20. 从星巴克店面运营学习 DevOps

热门文章

  1. 系统编程概述(进程)
  2. python 自动化框架打包_python+requests接口自动化框架
  3. 美联社:AMD 苏姿丰年薪四亿,成为去年标普 500 企业中最赚 CEO
  4. 计算机中8代表什么意思,8在易经中代表什么意思
  5. 笔记本win10更新无线服务器,win10系统笔记本无线网络找不到的解决方法
  6. VLC如何播放灵派直播编码器SRT流
  7. 如何优雅的在Word中插入格式化代码
  8. JAVAWEB NOTE 1
  9. 婚礼上新郎经典发言稿(绝对感动)我流泪了!!!
  10. 如何将word中的数据导入到数据库中