解决在matplotlib使用中文的问题

原生的matplotlib并不支持直接使用中文,而需要修改一下相应的文件,上网搜了下,找到一个最简洁的办法。

NO.1

找到matplotlibrc文件

C:\Python26\Lib\site-packages\matplotlib\mpl-data\matplotlibrc(Windows)

/usr/share/matplotlib/mpl-data/matplotlibrc (Linux)

NO.2

找到以下两项,去掉#

font.family         : sans-serif

font.sans-serif     : Microsoft YaHei , Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif     #添加“Microsoft YaHei”,该行指示缺省字体

NO.3

在写code的时候记得在字符串前加上u,表示unicode编码,例如:

setupGraph( 
           title="Speed of Train ", 
           xlabel=u‘Time  单位:s‘, 
           ylabel=u"Speed  单位:m/s",                       
           hold=True 
       )

时间: 2024-10-26 14:55:20

解决在matplotlib使用中文的问题的相关文章

修改配置文件matplotlibrc,让Matplotlib显示中文

matplotlib默认不支持中文显示,网上的解决办法有好多种,但是大多数都是通过在代码中指定字体,虽然也能实现,但是多出那么几行代码让人觉得很恶心. 本文介绍一种通过修改配置文件matplotlibrc,让Matplotlib显示中文的方法:在win7,Python2.7.9测试通过 第一步:将中文字体复制到matplotlib的字体目录中 中文字体以微软雅黑为例,在 C:\Windows\Fonts 下面找到“微软雅黑”字体.matplotlib默认安装在 %PythonPath%\Lib\

Matplotlib中中文不显示问题

我们在使用jupter进行数据分析的时候,会接触到Matplotlib这个库,它是用来进行可视化数据分析的,在一个图中,我们常常会加入一些中文来进行说明.当我们加入中文的时候会出现下图所示的样子: 可以看到,中文变成了这种乱码的形式.网上有很多的例子,有很多是错误的,这里我把我测试成功的方法说明一下. 我使用的电脑系统是Window10,后面的方法也是针对它的,其他的系统应该也差距不大,可以借鉴一下. 1.找一个喜欢的字体 字体的话,我们可以去网上下载,也可以用系统自带的.我们可以进入到目录:C

matplotlib显示中文异常处理

matplotlib显示中文 [做个记录,方便以后使用] [一般导入方式] import matplotlib.pyplot as plt [效果图] [方式一]FontProperties import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties # 步骤一 # ... font = FontProperties(fname=r"c:\windows\fonts\simsun.ttc&q

解决Xshell和vim中文乱码(转载)

From:http://blog.csdn.net/lovey599/article/details/7275403 一般而言,乱码多是由于编码问题引起 的,在windows系统中,大多数情况下中文编码采用的是big5或utf-8两种,但是默认情况下确是big5,如果这样的话,请首先用locale命令查看你linux系统当前语系,执行LANG=zh_CN.big5修改语系.这里以utf8编码为例. 打开一个用utf8编码的中文文件,在vim中,执行:set encoding=utf-8 term

解决 ElementTree 无法处理中文

解决 ElementTree 无法处理中文,UnicodeEncodeError: 'ascii' codec can't encode characters in position 76-99: ordinal not in range(128) 发表回复 ET.fromstring 传进去 unicode 字符串提示 UnicodeEncodeError: 'ascii' codec can't encode characters in position 76-99: ordinal not

解决Sublime Text 3中文显示乱码问题(转)

解决Sublime Text 3中文显示乱码问题(转) 1.打开Sublime Text 3,按Ctrl+-打开控制行,复制粘贴以下python代码,然后回车运行. 2. 复制并粘贴如下代码: import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = s

通过freemarker出word的技术解决方案_通过点击一个按钮临时实现生成一个word,解决出word时中文文件名乱码问题,解决打开出word时打开的word出现问题的问题,出图片,解决动态列表

 通过freemarker制作word比较简单 步骤:制作word模板.制作方式是:将模板word保存成为xml----在xml的word模板中添加相应的标记----将xml的word文件的后缀名改成ftl文件 详细步骤如下: 模板制作(将要动态显示的数据打上标记,这个标记是freemarker中的EL标记,要注意的是,要控制值为空的情况,下面${(site.wzmc)?default("")}标识当网站名称为空的时候显示空值,如果这里如果不做控制,在实际项目中会显示错误!) 另外

python数据分析入门——matplotlib的中文显示问题&最小二乘法

正在学习<用python做科学计算>,在练习最小二乘法时遇到matplotlib无法显示中文的问题.查资料,感觉动态的加上几条语句是最好,这里贴上全部的代码. # -*- coding: utf-8 -*- """ Created on Wed Aug 10 23:20:26 2016 @author: Administrator """ import numpy as np from scipy.optimize import le

php -- 解决php连接sqlserver2005中文乱码问题(附详细解决方法)

@[email protected]~~ --php5.2 --phpstudy --apache --sqlserver2005 @[email protected]~~问题描述 问题一:php连接sqlsever2005,输入中文,然后查询sqlserver中对应的数据,由于提交中文是UTF-8,而sqlserver的中文为GBK,所以字段无法匹配,没有查询结果. 问题二,php连接sqlsever2005,读取数据表数据,由于中文是UTF-8,而sqlserver的中文为GBK,读出来的中