换了笔记本之后在jupyter中用matplotlib画图一直无法愉快的显示中文,在网上苦苦查阅了许久,网上主流的方法有两种:一种是下载SimHei,将字体包放到matlotlib相关文件夹下并修改配置文件,另一种是每次画图都调用函数指定中文字体(在此不再对此两种方法的实体实现方式进行赘述)。第二种稍显笨重的方法自然无法让人心悦诚服地使用,而第一种方法我却屡试皆爽,不禁感到疑惑,别人是如何用这种方法操作成功的?

直到看到了某位老哥的一篇博客,我才豁然开朗:既然SimHei字体在Mac下无法奏效,那我为何不选用一种Mac支持的中文字体,为何非要费这么大功夫跟SimHei置气?于是我选用了另一种简单有效令人身心愉悦的方法——换字体。我放弃了使用SimHei,选择Arial Unicode MS作为matplotlib的中文字体。

一次性方法:

plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']

永久方法:
与主流方法一的原理相同:

  1. 找到字体路径
import matplotlib
print(matplotlib.matplotlib_fname())

我的路径:/Users/pengtiantian/opt/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
2. matplotlibrc正是需要修改的文件

cd /Users/pengtiantian/opt/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data
vim matplotlibrc

找到font.family与font.sans-serif(默认被注释掉了),修改为

font.family: sans-serif
font.sans-serif: Arial Unicode MS, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif

再找到后面的axes.unicode_minus,将True改为False(此项False,则matplotlib不会用中文字体显示负号“-”)

axes.unicode_minus: False
  1. 接下来,删除缓存文件:
rm -rf ~/.matplotlib/*
  1. 最后,重启jupyter内核,即可享用中文matloplib服务

    解决mac下jupyter中matplotlib中文无法显示的问题相关推荐

    1. 解决ubuntu下crossover中qq中文字体乱码问题

      本文适应于ubuntu16.04,crossover16.2.0-1.(如使用qq推荐使用腾讯qq8.9-2,点击下方的安装windows软件,在输入框输入"qq"两字即可看到) ...

    2. linux crossover 乱码,解决ubuntu下crossover中qq中文字体乱码问题

      本文适应于ubuntu16.04,crossover16.2.0-1.(如使用qq推荐使用腾讯qq8.9-2,点击下方的安装windows软件,在输入框输入"qq"两字即可看到) ...

    3. 解决jupyter中matplotlib中文乱码问题

      方法一: 第一步:系统中文字体查看 [hadoop@p168 ~]$ fc-list :lang=zh /System/Library/Fonts/STHeiti Medium.ttc: 黑体-简,黑 ...

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

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

    5. python django mysql写入中文乱码_解决django 向mysql中写入中文字符出错的问题

      之前使用django+mysql建立的一个站点,发现向数据库中写入中文字符时总会报错,尝试了修改settings文件和更改数据表的字符集后仍不起作用.最后发现,在更改mysql的字符集后,需要重建数据 ...

    6. 解决在全文搜索中搜索中文字符

      解决在全文搜索中搜索中文字符出错补丁:点击下载 http://www.artbbs.net/Demo/Dvbbs_Help/Help_Img/SQLx86.rar 解决中文字符出错问题: 方法一: 把 ...

    7. 解决MAC下MySQL忘记初始密码的方法

      解决MAC下MySQL忘记初始密码的方法分享给大家,供大家参考,具体内容如下 第一步: 点击系统偏好设置->最下边点MySQL,在弹出页面中,关闭服务 第二步: 进入终端输入:cd /usr/l ...

    8. 解决mac下的Sourcetree每次拉取提交都需要输入密码

      解决mac下的Sourcetree每次拉取提交都需要输入密码 最近重装了一次mac,并且重做了一下开发环境,结果以前的sourceTree项目的GIT密码始终保存不到Mac的钥匙串中,明明在钥匙串中是 ...

    9. 解决Mac下npm权限问题

      解决Mac下npm权限问题 参考文章: (1)解决Mac下npm权限问题 (2)https://www.cnblogs.com/bfc0517/p/10186882.html 备忘一下.

    最新文章

    1. 小型职工工作量c语言,计算机c语言职工工作量统计系统.doc
    2. 如何一小时杀入天池OCR比赛前排?
    3. openCV 图像相加,位运算,协方差,绝对值,比较
    4. ceph-deploy出错UnableToResolveError Unable to resolve host
    5. JAVA入门笔记·JAVA名词及环境搭建
    6. kvm 网络配置之nat、用户模式
    7. .NET疯狂架构经验分享系列之(七)WCF支持(转)
    8. mysql 改表面_CSS表面(outline)是什么【html5教程】,CSS
    9. Pentium 4处理器架构/微架构/流水线 (2) - SSE2
    10. Android系统(62)-----Android 7.1 新特性之 Shortcuts 介绍
    11. c++ list排序_排序(二)交换排序
    12. 1.7_heap_sort_堆的向下调整堆排序
    13. 一张浓缩大学生活的顶级报(转载)
    14. Java高并发编程详解系列-Volatile关键字
    15. 基于微信小程序计算机基础答疑系统设计与实现
    16. 量化金融经典理论、重要模型、发展简史大全
    17. [BZOJ2906] 分块
    18. python工程师工资多少-Python工程师的薪资到底有多高
    19. Spring Boot/Spring Cloud 集成Page Office支持word、excel、ppt在线浏览编辑
    20. 微积分:闭区间上 有界、可积、连续、可导 的强弱关系

    热门文章

    1. 先验概率、后验概率、条件概率等
    2. java中找不到文件是什么情况_java系统找不到指定文件怎么办
    3. php三维数组定义,PHP数组之三维数组
    4. 数组去重splice
    5. ssm+jsp计算机毕业设计多媒体毕业纪念册及播放系统093r0(程序+LW+源码+远程部署)
    6. java中方法调用的三种方式
    7. 原 docker(21):使用docker构建小的镜像
    8. 高德地图WebAPI : 驾车路径规划
    9. 二、进程管理(五)死锁
    10. 干货,用UI自动化方式获取视频信息,请勿恶意爬虫