前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决matplotlib中文显示问题

解决matplotlib中文显示问题

作者头像
小闫同学啊
发布2019-07-18 14:58:57
2.4K0
发布2019-07-18 14:58:57
举报
文章被收录于专栏:小闫笔记小闫笔记

正文共: 1538 字 5 图 预计阅读时间:4 分钟

每日分享

Setting goals is the first step in turning the invisible into the visible.

设定目标是将隐形变为可见的第一步。

小闫语录

凡事预则立,不预则废。一个目标是你走向成功的第一步,缺少这一步也许你仍然会成功,但是你走向成功的路一定会很艰难,一定会比其他人走更多的岔路。因为你没有一个明确的方向,犹如在沙漠里跌跌撞撞。

解决matplotlib中文显示问题

环境

Ubuntu16.04、matplotlib==2.2.2

问题

在jupyter notebook中使用matplotlib画折线图时,坐标上的中文无法正常显示

解决办法

1.首先准备一款中文字体。注意,在Ubuntu中使用ttf格式的字体,如果实在找不到,那就用下面分享的这个字体吧:

代码语言:javascript
复制
链接:https://pan.baidu.com/s/1OT4DaBawpltj7vz7ECfp-g 
提取码:mykn

2.然后需要修改配置文件matplotlibrc。我就知道你找不到,下面按我的步骤来吧。

3.在终端中进入python或者ipython。输入下面的命令:

代码语言:javascript
复制
import matplotlib
print(matplotlib.matplotlib_fname())

4.接下来会返回一个地址,请将这个 matplotlibrc地址复制下来。

5.然后在终端中输入命令:

代码语言:javascript
复制
vim 你的`matplotlibrc`地址

6.找到字体的位置将下面的命令粘贴过去,你如果找不到那就直接定位到193行吧,我替你看好了,不要谢我。

代码语言:javascript
复制
font.family         : sans-serif
font.sans-serif         : simhei
axes.unicode_minus  : False

7.然后我们需要找一个地址,这个地址是存放matplotlib字体的地方。将你下载的字体放到这个目录下。

代码语言:javascript
复制
# 第4步中你的`matplotlibrc`地址应该长这样,我以我的举例说明,请结合你自己的路径修改
/home/python/.virtualenvs/AI_py3_1.11/lib/python3.5/site-packages/matplotlib/mpl-data/matplotlibrc
# 上面的路径删除掉matplotlibrc,然后我们会进入这个目录下,你就会发现这个目录下有fonts
/home/python/.virtualenvs/AI_py3_1.11/lib/python3.5/site-packages/matplotlib/mpl-data/
# 然后再进入到下面的目录,这个目录是都一样的
cd fonts/ttf
# 最后将你的下载的字体放到上面的这个目录下。

8.就快要完了,耐心点。我们接下来就是要清除掉原来的缓存了。那么缓存怎么找呢?看下面。

9.其实它在下面的路径里面:

代码语言:javascript
复制
/home/python/.cache/matplotlib

10.也许每个人的环境不同,大家可以先打开文件夹,进入到家目录(/home/),然后按快捷键

代码语言:javascript
复制
ctrl + H

11.你往下拉,你会发现里面的隐藏文件都显示了。你需要找到 .cache,然后进去,找到 matplotlib,删除掉这个文件夹。

12.重新启动你的matplotlib程序,看看吧。

优质文章推荐:

公众号使用指南

redis操作命令总结

前端中那些让你头疼的英文单词

Flask框架重点知识总结回顾

项目重点知识点详解

难点理解&面试题问答

flask框架中的一些常见问题

团队开发注意事项

浅谈密码加密

Django框架中的英文单词

Django中数据库的相关操作

DRF框架中的英文单词

重点内容回顾-DRF

Django相关知识点回顾

美多商城项目导航帖

项目重要技术点介绍

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 全栈技术精选 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 每日分享
  • 解决matplotlib中文显示问题
    • 环境
      • 问题
        • 解决办法
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档