Python学习笔记(8)--matplotlib图例显示中文
来源:互联网 发布:软件如何脱壳 编辑:程序博客网 时间:2024/05/21 07:47
相信很多初学者和我一样,在利用matplotlib库画图的时候遇到过图例不能显示中文的问题。经过仔细探索(百度+谷歌),现分享一种简单便捷一劳永逸的方法。
- 一般画图是不能显示中文图例的:
import numpy as npfrom scipy.optimize import leastsqimport pylab as plimport matplotlibdef func(x,p): a,k,theta = p return a*np.sin(2*np.pi*k*x+theta)def residuals(p,y,x): return y - func(x,p)x = np.linspace(0,-2*np.pi,100)a = 10k = 0.34theta = np.pi/6y0 = func(x,[a,k,theta])y1 = y0 + 2*np.random.randn(len(x))p0 = [7,0.2,0]plsq = leastsq(residuals,p0,args=(y1,x))print('真实的参数',[a,k,theta]) print('拟合参数',plsq[0]) pl.plot(x,y0,label = '真实数据')pl.plot(x,y1,label = '带噪声的实验数据')pl.plot(x,func(x,plsq[0]),label = '拟合数据')pl.legend()pl.show()
运行之后,图例不能正常显示,只是几个框框。
- 解决方法:
#在前面加上下面三行:from pylab import *mpl.rcParams['font.sans-serif'] = ['SimHei']mpl.rcParams['axes.unicode_minus'] = False
代码变成:
import numpy as npfrom scipy.optimize import leastsqimport pylab as plimport matplotlibfrom pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = False**def func(x,p): a,k,theta = p return a*np.sin(2*np.pi*k*x+theta)def residuals(p,y,x): return y - func(x,p)x = np.linspace(0,-2*np.pi,100)a = 10k = 0.34theta = np.pi/6y0 = func(x,[a,k,theta])y1 = y0 + 2*np.random.randn(len(x))p0 = [7,0.2,0]plsq = leastsq(residuals,p0,args=(y1,x))print('真实的参数',[a,k,theta]) print('拟合参数',plsq[0]) pl.plot(x,y0,label = '真实数据')pl.plot(x,y1,label = '带噪声的实验数据')pl.plot(x,func(x,plsq[0]),label = '拟合数据')pl.legend()pl.show()
运行该代码:
这样就轻松的解决了matplotlib中图例不能是中文的问题!
0 0
- Python学习笔记(8)--matplotlib图例显示中文
- matplotlib 图例显示中文
- Matplotlib 图例中文显示(大小修改)
- matplotlib图例中文显示问题
- python matplotlib绘图时图例显示问题
- Python 3基础教程47-Matplotlib显示图例
- python matplotlib 显示中文
- matplotlib图例中文乱码
- 【Matplotlib】图例分开显示
- windows下matplotlib图例中文无法显示的解决办法
- python matplotlib中文显示问题
- python matplotlib中文显示问题
- 【Python可视化】Matplotlib显示中文
- python matplotlib中文显示问题
- python matplotlib 中文显示参数设置
- python matplotlib 中文显示参数设置
- python matplotlib 中文显示参数设置
- python matplotlib中文显示问题
- 【算法】用程序验证规律,1,11,21,1211,111221
- Springboot 随笔-- Properties 配置一坑
- CC2540一主多从的限制条件
- JAVA常用类
- Oracle触发器之——同一表空间下的不同用户
- Python学习笔记(8)--matplotlib图例显示中文
- 设置Eclipse中的每一行容纳的代码数
- C++中局部和全局变量的地址分配
- JAVA中的反射机制
- TCP包首部
- 侧滑栏: SlideMenu
- 按周统计数据,并获取本周第一天与本周最后一天
- java多线程与线程间通信
- 难以区分的三个注解