Mac下面 matplotlib 中文无法显示解决

Posted php-linux

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mac下面 matplotlib 中文无法显示解决相关的知识,希望对你有一定的参考价值。

 

一、环境描述

  • python 3.7
  • mac 10.14.5

二、问题描述

如下图所示,当使用matplotlib绘制图片的时候,所有的中文字符无法正常显示。
技术图片

三、解决方法

1、下载字体ttf文件

链接:https://pan.baidu.com/s/1RLVvbIi_NpAiiycBYQRPCQ 密码:n1sv

2、找到配置文件

使用如下代码找到配置文件:

import matplotlib
print (matplotlib.matplotlib_fname()) # 将会获得matplotlib配置文件
 
  • 1
  • 2

我个人的配置如下图:
技术图片

3、找到ttf字体文件存放目录并添加ttf文件

打开/Users/lina/.matplotlib/,会看到有一个fontList.json文件,打开文件,会看到一系列的字体配置,可以得到字体配置的目录:
技术图片
打开目录/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/,将刚刚下载的simhei.ttf复制到此文件夹下,并将simhei.ttf添加到fontList.json中,如下图:
技术图片

4、重新加载新的字体库

使用下面代码加载新的字体库:

from matplotlib.font_manager import _rebuild
_rebuild()
 
  • 1
  • 2

注意,这个只需要执行一次即可。

5、在画图中应用simhei字体

使用如下代码引用simhei字体:

import matplotlib.pyplot as plt

plt.rcParams[‘font.sans-serif‘]=[‘SimHei‘]
 
  • 1
  • 2
  • 3

其最终效果如下,中文可以正常显示。
技术图片

参考文章:

https://blog.csdn.net/quiet_girl/article/details/103398605
https://blog.csdn.net/Lengwenin/article/details/97372563
https://www.cnblogs.com/wanghui-garcia/p/11195925.html

以上是关于Mac下面 matplotlib 中文无法显示解决的主要内容,如果未能解决你的问题,请参考以下文章

Mac 上的 Anaconda:无法将 Matplotlib 后端设置为 Agg

Mac 上的 Chrome 无法正确显示网站

解决mac睡眠唤醒/插拔之后,外接显示器无法点亮/无信号问题

ubuntu环境下python调用matplotlib作图无法显示中文的问题处理

ubuntu环境下python调用matplotlib作图无法显示中文的问题处理

解决seaborn画图无法显示中文的问题