欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-03-24 15:33:54
...

原因是字体导致的。大家的做法基本都是搞一个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。