matplotlib的中文设置 |
您所在的位置:网站首页 › 如何设置matplotlib支持中文 › matplotlib的中文设置 |
在matplotlib中绘制图表时中文不能正确显示,这是因为matplotlib的默认设置中没有支持中文,只需要对设置进行一定更改就可以了 解决方法 import matplotlib as mpl mpl.rcParams['font.sans-serif'] = ['SimHei'] #设置简黑字体 mpl.rcParams['axes.unicode_minus'] = False # 解决‘-’bug如果你不嫌麻烦那么每次在用matplotlib作图前加上这两句就可以了(仅限windows用户) 但我们可以对配置文件下手彻底解决这个问题 在此之前先说一下为什么linux系统执行这两条语句之后并没有效果,原因是在linux的字体中没有simhei.ttf这个文件格式,所以把并不能成功显示中文字体,这时我们也只能对配置文件进行更改才能解决 准备好字体文件(windows不需要)git clone https://github.com/tracyone/program_font && cd program_font && ./install.sh 安装的字体文件一般在/usr/share/fonts/MyFonts/目录下 找到配置文件的地址 In [2]: mpl.matplotlib_fname() Out[2]: '/usr/local/lib/python3.5/dist-packages/matplotlib/mpl-data/matplotlibrc'这返回的是一个文件的路径,他的目录路径即/mpl-data/,先将字体文件复制到mpl-data/fonts/ttf中 然后返回再对matplotlibrc这个文件进行修改 # 找到font.family配置项,去掉注释,将值改为对应的字体名字。 font.family : SimHei # 找到axes.unicode_minus配置项,去掉注释,将值改为False解决‘-’的问题 axes.unicode_minus : False 删除缓存文件,使更改生效(windows不需要这步)缓存文件路径~/.cache/matplotlib直接整个文件夹删除即可 rm ~/.cache/matplotlib -R 之后任意使用matplotlib制图中文都可以正常显示了,windows下只需要修改配置文件就可以了 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |