解决matplotlib中文乱码问题(Windows)
2014-06-19 23:20
609 查看
matplotlib是Python著名的绘图库,默认并不支持中文显示,因此在不经过修改的情况下,无法正确显示中文。本文将介绍如何解决这一问题的方法。
网上的主流方法是修改matplotlibrc文件,如下(但是没有效果):
1,找到
#font.family:sans-serif
去掉注释
2,找到
#font.sans-serif:Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica,Avant Garde, sans-serif
修改为
font.sans-serif:Microsoft YaHei ,Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid,Arial, Helvetica, Avant Garde, sans-serif
即去掉注释,并在配置值中添加 MicrosoftYaHei ,
3,在windows下搜索msyh.ttf,即微软的雅黑字体
并将msyh.ttf copy到python按照目录下的
D:\Python27\Lib\site-packages\matplotlib\mpl-data\fonts\ttf目录
细节注释:按照上述的步骤操作,在matplotlibrc中修改也是徒劳。
下面是另一种方法:(解决matplotlib图像中文显示问题)
1、找到matplotlib安装目录,
比如D:\Python27\Lib\site-packages\matplotlib\mpl-data目录下的matplotlibrc文件,找到#font.sans-serif :…这一行,把后面的修改为’nothing’,这样做是强制让系统无法找到英文字体,而是用matplotlib默认字体Vera.ttf替换(不做这一步,我测试了也是可以的!)
2、同个文件中找到#verbose.level : silent这行。把silent修改为debug,这样做是为了看更详细的输出.(不做这一步,我测试了也是可以的!)
3、 找到字体目录D:\Python27\Lib\site-packages\matplotlib\mpl-data\fonts\ttf下的Vera.ttf。这里我们用中文楷体可以从C:\Windows\Fonts拷贝过来,直接张贴到前面的ttf目录下,然后更名为Vera.ttf,相当于用中文的字体替换掉之前的英文字体,偷龙转凤!!
4. 程序中指定文件编码# -*-coding: utf-8 -*- ,并且确保要输出的中文是unicode形式,检查是否为unicode代码:isinstance(s,unicode)。
上述操作,其实只要将Vera.ttf文件替换掉即可,不用修改matplotlibrc文件也是可行的。只是担心以后会有什么副作用。。。
参考网址:/article/5884971.html
网上的主流方法是修改matplotlibrc文件,如下(但是没有效果):
1,找到
#font.family:sans-serif
去掉注释
2,找到
#font.sans-serif:Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica,Avant Garde, sans-serif
修改为
font.sans-serif:Microsoft YaHei ,Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid,Arial, Helvetica, Avant Garde, sans-serif
即去掉注释,并在配置值中添加 MicrosoftYaHei ,
3,在windows下搜索msyh.ttf,即微软的雅黑字体
并将msyh.ttf copy到python按照目录下的
D:\Python27\Lib\site-packages\matplotlib\mpl-data\fonts\ttf目录
细节注释:按照上述的步骤操作,在matplotlibrc中修改也是徒劳。
下面是另一种方法:(解决matplotlib图像中文显示问题)
1、找到matplotlib安装目录,
比如D:\Python27\Lib\site-packages\matplotlib\mpl-data目录下的matplotlibrc文件,找到#font.sans-serif :…这一行,把后面的修改为’nothing’,这样做是强制让系统无法找到英文字体,而是用matplotlib默认字体Vera.ttf替换(不做这一步,我测试了也是可以的!)
#font.sans-serif : nothing |
1 | #verbose.level : debug |
4. 程序中指定文件编码# -*-coding: utf-8 -*- ,并且确保要输出的中文是unicode形式,检查是否为unicode代码:isinstance(s,unicode)。
上述操作,其实只要将Vera.ttf文件替换掉即可,不用修改matplotlibrc文件也是可行的。只是担心以后会有什么副作用。。。
参考网址:/article/5884971.html
相关文章推荐
- 解决matplotlib中文乱码问题(Windows)
- 解决matplotlib中文乱码问题(Windows)
- matplotlib解决中文乱码问题
- 彻底解决matplotlib中文乱码问题
- 在matplotlib中,解决中文乱码问题
- 解决matplotlib中文乱码问题(Ubuntu16.04)
- 彻底解决matplotlib中文乱码问题
- 西瓜书 习题4.3 编程实现信息熵决策树、绘制决策树、解决matplotlib中文乱码问题
- Mac系统彻底解决matplotlib中文显示乱码的问题
- Python 3下使用Matplotlib工具画图,中文显示乱码的问题解决(修改配置文件)
- 解决matplotlib中文乱码问题
- 解决windows下 Python中 matplotlib 做图中文不显示的问题
- 解决Windows系统下python利用matplotlib绘图时中文乱码的问题
- ubuntu系统下matplotlib中文乱码问题的解决方法
- 彻底解决matplotlib中文乱码问题
- 解决matplotlib中文乱码问题
- 解决matplotlib中文乱码问题
- 彻底解决matplotlib中文乱码问题
- Ubuntu下matplotlib绘图中文乱码问题的解决
- 真·matplotlib中文乱码问题·解决方法