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

matplotlib默认不支持中文显示,网上的解决办法有好多种,但是大多数都是通过在代码中指定字体,虽然也能实现,但是多出那么几行代码让人觉得很恶心。

本文介绍一种通过修改配置文件matplotlibrc,让Matplotlib显示中文的方法:在win7,Python2.7.9测试通过

第一步:将中文字体复制到matplotlib的字体目录中

中文字体以微软雅黑为例,在 C:\Windows\Fonts 下面找到“微软雅黑”字体。matplotlib默认安装在 %PythonPath%\Lib\site-packages 目录下。

复制微软雅黑字体到 %PythonPath%\Lib\site-packages\matplotlib\mpl-data\fonts\ttf\

第二步:配置文件matplotlibrc

在 %PythonPath%\Lib\site-packages\matplotlib\mpl-data\ 找到matplotlibrc文件,用记事本打开做如下修改并保存。

  • 找到设置font.family的行,改为font.family : monospace,注意去掉前面的#号。
  • 在下面添加一行:font.monospace      : Microsoft YaHei

测试程序:

 1 # -*- coding: utf-8 -*-
 2 import numpy as np
 3 import pylab as pl
 4
 5 fig = pl.figure()
 6 x = np.arange(0, 2*np.pi, 0.01)
 7 pl.plot(x, np.sin(x))
 8 pl.xlabel(u‘角度‘)
 9 pl.ylabel(u‘幅值‘)
10 pl.title(u‘正弦波‘)
11
12 fig.axes[0].grid(True)#打开网格
13 pl.ylim(-1.2,1.2)#设置y轴范围限制
14
15 pl.show()

输出

时间: 2024-10-18 10:42:09

修改配置文件matplotlibrc,让Matplotlib显示中文的相关文章

matplotlib 显示中文

# --*-- coding: utf-8 --*-- from matplotlib.font_manager import FontProperties import matplotlib.pyplot as plt font = FontProperties(fname=r"/usr/share/fonts/win/msyh.ttf", size=14) fig = plt.figure(figsize=(6, 6)) x = [1, 2, 3, 4, 5, 6, 7, 8] y

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

matplotlib 显示中文 与 latex冲突

如果在使用中文之前包含了使用latex的语法: mpl.rcParams['text.usetex'] = True 将不能正确显示含有中文的图片. 附 显示中文的方法: from matplotlib.font_manager import FontPropertiesfont_chinese = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=12) title(u'比值', fontproperties=font

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

后台代码中绑定枚举类型显示为英文,要显示中文的

显示英文的情况: 是点击同页面中另外一个ddl控件显示隐藏部分,其中隐藏部分中有另一个ddl,此ddl显示为英文 this.ddl.Items.Add(EnumUtils.GetListItem(PeriodType.Month));....... 这里在页面显示中为Month 修改为:(此种格式显示中文) this.ddl.Items.Add(new ListItem(GetString(PeriodType.Month.ToString()),((int)PeriodType.Month).

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

原因是字体导致的.大家的做法基本都是搞一个windows上的字体文件(simhei.ttf, 点我fq下载)然后刷新一下缓存文件. 只不过百度搜到第一篇CSDN的博客,写的很不靠谱(不是所有的CSDN都不靠谱,但是相当多的都不靠谱.) 靠谱的做法: 首先要明白,你用的是哪个matplotlib,是apt安装的python-matplotlib还是pip装的matplotlib,是python2的还是python3的?(以及,也许你是anaconda装的?) 找到你用的matplotlib包所使用

Python 中,matplotlib绘图无法显示中文的问题

在python中,默认情况下是无法显示中文的,如下代码: [python] view plain copy import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxstyle = "sawtooth", fc = "0.8") leafNode = dict(boxstyle = "round4", fc = "0.8") arrow_args =

【转】 Python 中,matplotlib绘图无法显示中文的问题

在python中,默认情况下是无法显示中文的,如下代码: [python] view plain copy import matplotlib.pyplot as plt # 定义文本框和箭头格式 decisionNode = dict(boxstyle = "sawtooth", fc = "0.8") leafNode = dict(boxstyle = "round4", fc = "0.8") arrow_args =

linux修改配置文件解决mysql中文乱码和指定数据库存储引擎

如题,mysql数据库的中文显示乱码: 先看下原来数据库里的字符编码: mysql> show variables like '%character_set%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | l