ubuntu下使用matplotlib绘图无法显示中文label

原因是字体导致的。大家的做法基本都是搞一个windows上的字体文件(simhei.ttf, 点我fq下载)然后刷新一下缓存文件。

只不过百度搜到第一篇CSDN的博客,写的很不靠谱(不是所有的CSDN都不靠谱,但是相当多的都不靠谱。)

靠谱的做法:

首先要明白,你用的是哪个matplotlib,是apt安装的python-matplotlib还是pip装的matplotlib,是python2的还是python3的?(以及,也许你是anaconda装的?)

找到你用的matplotlib包所使用的配置文件的方法,是终端输入如下代码:

>>> import matplotlib
>>> print matplotlib.matplotlib_fname()
/usr/local/lib/python2.7/site-packages/matplotlib/mpl-data/matplotlibrc

其中最后一行是结果,是用pip装的matplotlib。anyway,反正我是把apt装的python-matplotlib和python-pip这俩玩意儿都卸载了,不然太碍事。

然后是把下载的字体拷贝过到相应的字体目录下。所谓字体目录,就是根据前面得到的matplotlibrc文件目录的同一套的一个目录(嗯,配套的),例如/usr/local/lib/python2.7/dist-packages/matplotlib/mpl-data/fonts/ttf。
注意使用sudo来拷贝。

然后是清理字体缓存:

cd `/.cache/matplotlib
rm * -rf

现在肯定可以显示中文了。注意加u。

原文地址:https://www.cnblogs.com/zjutzz/p/9110236.html

时间: 2024-07-29 03:50:12

ubuntu下使用matplotlib绘图无法显示中文label的相关文章

Python 中,matplotlib绘图无法显示中文的问题

在python中,默认情况下是无法显示中文的,如下代码: [python] view plain copy import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxstyle = "sawtooth", fc = "0.8") leafNode = dict(boxstyle = "round4", fc = "0.8") arrow_args =

【转】 Python 中,matplotlib绘图无法显示中文的问题

在python中,默认情况下是无法显示中文的,如下代码: [python] view plain copy import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxstyle = "sawtooth", fc = "0.8") leafNode = dict(boxstyle = "round4", fc = "0.8") arrow_args =

ubuntu 下安装 matplotlib

直接使用sudo easy_install matplotlib 报错 ============================================================================ Edit setup.cfg to change the build options BUILDING MATPLOTLIB matplotlib: yes [1.3.1] python: yes [2.7.6 (default, Mar 22 2014, 22:59:56

Windows下命令行Git无法显示中文问题解决方案

Windows下Git设置编码正常显示中文: 在 CMD 下设置环境变量 set LESSCHARSET=utf-8 在 PowerShell 下设置环境变量 $env:LESSCHARSET='utf-8'GitBash中正常显示中文: 打开Gitbash -> 右键->options ->左侧text->设置locale:zh_cn,设置Character set:GBK->save->apply 测试是否正常:GitBash输入 systeminfo看能否正常显示

Ubuntu下解决解压zip文件中文文件名乱码问题

在Ubuntu下解压Windows下压缩的zip文件时,会出现解压出的带中文文件名的文件名乱码,这是因为Ubuntu和Windows默认的编码不同,Ubuntu下默认的编码是UTF-8,而Windows下默认的编码是GBK.对于这个问题,主要有以下三种解决方法: 一.命令行指定解压字符集 在Ubuntu下解压来源于Windows的zip文件,中文文件名会出现乱码问题. 出现这个问题的原因是:Windows和Ubuntu使用的默认编码不相同,而且zip文件自身却不带有任何标识其编码的信息.解决方案

【转】解决Ubuntu下Sublime Text 3无法输入中文

前言 sublime很好用,但是ubuntu下不能输入中文,这是一个很大的问题.不知道为什么开发着一直也不解决,好在还是有高手在,总能找到方法.网上方法很多,但是也很乱,现在我将自己的经验总结一下. 首先,我参考了好几篇文章,都是蛮不错的,先列出来: sublime-text-imfix:首先推荐这个方法,最简单,但是在我的系统上有些问题.可用这个的强烈推荐用这个 完美解决 Linux 下 Sublime Text 中文输入:讲的比较明白,也可用参考. Ubuntu下Sublime Text 3

linux下java窗口,正确显示中文

Tip1 1.在 JAVA_HOME/jre/lib/fonts/ 下建立个目录 fallback 2.在 fallback 里弄个中文字体最简单ln一下就好了 比如: ln -s /usr/share/fonts/truetype/arphic/uming.ttf $JAVA_HOME/jre/lib/fonts/fallback/ Tip2 问题描述:Java 应用程序的中文无法显示,呈现方块状. 原因分析:Java 应用程序无法找到可供显示中文的字体. 解决方案:首先,确保系统里安装了 J

解决Ubuntu下Sublime Text 3无法输入中文

前言 sublime非常好用,可是ubuntu下不能输入中文,这是一个非常大的问题.不知道为什么开发着一直也不解决,好在还是有高手在.总能找到方法. 网上方法非常多,可是也非常乱,如今我将自己的经验总结一下. 首先,我參考了好几篇文章.都是蛮不错的.先列出来: sublime-text-imfix:首先推荐这种方法.最简单.可是在我的系统上有些问题. 可用这个的强烈推荐用这个 完美解决 Linux 下 Sublime Text 中文输入:讲的比較明确.也可用參考. Ubuntu下Sublime

tomcat在ubuntu下启动成功但不显示欢迎页面,也启动不了struts2项目

在ubuntu下安装tomcat之后,一直无法打开strust2项目,随之重新安装,能够启动成功,但是却不出现apache的logo: 随之,很找, 重新安装, 再试 不行 继续找 最后看到有人说可能端口被占用 所以查询:lsof -i:8080 结果真发现了 java    5346 root  149u  IPv6  25116      0t0  TCP *:http-alt (LISTEN) 重新分配个端口8088吧 配置server.xml java    8293 root   42