python图标中文_解决python中matplotlib中文乱码 for Mac

当在MacBook的pycharm上使用matplotlib绘制图表时,中文很可能会无法正常显示,如下图中图表文字部分的方块:

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(-2, 6, 50)

y1 = x + 3 # 曲线 y1

plt.figure() # 定义一个图像窗口

plt.plot(x, y1) # 绘制曲线 y1

plt.title('直线图')

plt.show()

解决办法:

查看matplotlib支持的字体集

from matplotlib import font_manager

ttf_lists = font_manager.fontManager.ttflist

for font in ttf_lists:

print(font)

从中选择一种中文字体,以宋体为例:

plt.rcParams['font.sans-serif']=['Songti']

plt.rcParams['axes.unicode_minus']=False

这样就可以显示成功了,如下图

注意:如果查看的字体集宋体为如下所示:

那么上面语句应该为

# plt.rcParams['font.sans-serif']=['Songti']

plt.rcParams['font.sans-serif']=['Songti SC']

plt.rcParams['axes.unicode_minus']=False

如果查看的matplotlit字体集中没有宋体,然后你想使用宋体,则需要修改matplotlit配置文件,具体操作如下

查看Mac中文字体集

在Focus Search (聚焦搜索)中, 在电脑屏幕右上角点击搜索图标,搜索font, 进入字体册, 选择宋体(没有宋体,那你就需要下载该字体了)

如宋体-简, 选择常规体, 右键在Folder (访达)中显示,获取路径(右键,显示简介)

复制路径 option + command + c

/Library/Fonts/Songti.ttc

修改Matplotlib配置

进入matplotlib的配置路径

cd /User/xxxx/.matplotlib

修改配置中的字体文件fontList.json,在ttflist列表中, 添加"Songti"的中文字体集。首先,进入fontList.json

vi fontList.json

找到ttflist

/ttflist

添加宋体字体集

{

"fname": "/Library/Fonts/Songti.ttc",

"name": "Songti",

"style": "normal",

"variant": "normal",

"weight": 400,

"stretch": "normal",

"size": "scalable",

"_class": "FontEntry"

}

查看matplotlib支持的字体集,这时候就显示有"Songti"了 (当然上述的"Songti SC"也可以在这里改为"Songti" ,如果你不嫌麻烦,也可以不改,按照上面👆的语句也可以使用),设置就完成了!

使用字体集

plt.rcParams['font.sans-serif']=['Songti']

plt.rcParams['axes.unicode_minus']=False

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值