资讯专栏INFORMATION COLUMN

Matplotlib中文字体显示

dingda / 3502人阅读

摘要:在上安装不使用,直接使用安装即可向添加中文字体微软雅黑不能默认使用中文字体显示字符的原因只是因为其未包含中文字体文件,所以导入中文字体文件到中即可。

在Mac上安装Matplotlib

不使用Anaconda,直接使用pip安装即可:

    pip3 install matplotlib
向Matplotlib添加中文字体Microsoft YaHei(微软雅黑)

Matplotlib不能默认使用中文字体显示字符的原因只是因为其未包含中文字体文件,所以导入中文字体文件到Matplotlib中即可。

Matplotlib的安装位置,如果使用pip3安装则其默认的安装路径在/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/
当然你也可以通过如下程序确定你的Mac上的Matplotlab的安装路径:

import matplotlib
print(matplotlib.matplotlib_fname())

打开这个目录可以看到这个路径下的mpl-data/fonts/ttf/,这个就是Matplotlib引入字体的路径,我们只需要把微软雅黑字体的ttf文件拷贝到其中即可。

修改Matplotlib的默认字体配置

仍然在上述的Matplotlib安装路径中,可以看到mpl-data/matplotlibrc这个文件,这个就是Matplotlib的配置文件。

在这个文件中搜索font.family,将#删除即把此行注释打开。则Matplotlib现在的默认字体族是:

font.family         : sans-serif

再在这个文件中搜索font.sans-serif,将#删除即把此行注释打开,然后在这个配置的最前面加上Microsoft YaHei

font.sans-serif     : Microsoft YaHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif

Matplotlib现在的默认sans-serif字体族会最先使用Microsoft YaHei去展示字体,而这个Microsoft YaHei就可以展示中文字体了。

清除字体缓存

为了更好地看到效果,最好可以清楚之前Matplotlib生成的缓存文件,打开~/.matplotlib路径,其中可以看到fontList.jsontex.cache,前者其实就是字体列表的缓存文件,可以删除之:

rm -rf fontList.json
测试效果

如下测试代码查看是否生效:

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

plt.plot((1, 2, 3), (4, 3, -1))
plt.xlabel(u"横坐标")
plt.ylabel(u"纵坐标")
plt.show()

执行效果如下所示:

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/41340.html

相关文章

  • python matplotlib 中文显示参数设置

    摘要:最近在学习著名的绘图包时发现,有时候图例等设置无法正常显示中文,于是就想把这个问题解决了。原因大致就是库中没有中文字体。 最近在学习python著名的绘图包matplotlib时发现,有时候图例等设置无法正常显示中文,于是就想把这个问题解决了。 PS:本文仅针对Windows,其他平台仅供参考。 原因 大致就是matplotlib库中没有中文字体。1我安装的anaconda,这是对应的...

    Pocher 评论0 收藏0
  • 怎么用Python matplotlib库解决画图中出现中文显示显示成方框的的问题

      小编写这篇文章的一个最为主要的目的,就是去给大家去做一个解释,解释关于在python中的一些问题,甚至是出现的各种相关的疑难杂症问题,比如出现了中文负数的问题,下面小编就给大家详细的去做一个解答。  解决Python中matplotlib库画图中文和负号显示为方框的问题  注意:  语言版本:Python 3.10.4  编译器版本:PyCharm 2021.3.2  操作系统:Win11  ...

    89542767 评论0 收藏0
  • 装扮你的Jupyter

    摘要:显示中文此外,单独拎出来的另一个原因是,还有一个中文显示的问题。首先我们来看可以使用的字体你应该看到下面这样的表格然后找到支持中文的字体名,然后设置的默认字体当然,你可以添加到刚才的配置中,或者采用这个博客的方法。 又到摆脱重复工作,换个心情,然而并没有软用的时间了。这次,教大家如何搭建一个好看的jupyter环境。 安装Jupyter 先来展示一下我的环境 python: 3.5....

    leo108 评论0 收藏0
  • 怎样解决pycharm中用matplotlib绘图无法显示中文难题

      本文主要是阐述了怎样解决pycharm中用matplotlib绘图无法显示中文难题,文章内容紧扣主题进行详尽的基本介绍,具有很强的实用价值,感兴趣的朋友可以了解一下  序言:  其实不是很难!举个典型的例子!  这也是简单的表明阶段的环境温度折线统计图:  frommatplotlibimportpyplotasplt,font_manager   importrandom   x=range...

    89542767 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<