问题:anaconda环境下的matplotlib图片不显示中文
查资料过后大多数都在说要添加以下代码设置:
import matplotlib.pyplot as plt
plt.rcParams['font.family'] = "SimHei"
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
anaconda环境下不能直接使用以上代码,只能在ubton下才能使用该方法。
解决:
在以上基础上需要下载simhei.tff文件
1.找到matplotlibbrc所在路径
输入:
过程如下:
## 要在当前你所用的环境下去找
(tensorflowenv) zl@sugon-X795-G30:~$ python
Python 3.7.9 (default, Aug 31 2020, 12:42:55)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib
>>> print(matplotlib.matplotlib_fname())
/public/zl/miniconda3/envs/tensorflowenv/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
2.下载所需要的文字包,如这里的(黑体)simhei.ttf
找到上述对应路径下的fonts/ttf文件夹把文件添加进去
/public/zl/miniconda3/envs/tensorflowenv/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf
3.删除matplotlib缓存文件
输入以下代码:
>>> import matplotlib
>>> matplotlib.get_cachedir()
'/public/zl/.cache/matplotlib'
#找到路径后删除文件
>>> rm -rf /public/zl/.cache/matplotlib
如果因为".名字"invalid出现报错删不掉可以直接到目录里去删掉
4.修改上述...../mpl_data路径下matplotlibbrc里面的内容(共三处)