matplotlib的简单学习
1. 创建一个图纸(python会自动默认一个图纸)figure
2. 在图纸上创建子图(绘图区域)subplot
3. 通过plot进行图形绘制,可画出散点图、直线图,折线图等各种图形
4. 其它各种功能
import matplotlib.pyplot as plt
import numpy as np
plt.figure() #创建图纸
plt.plot([1,2,3,4],[5,6,7,8],'ro') #绘画[1,2,3,4],[5,6,7,8]分别代表(x,y)’ro’表示使用红,# 色,以o为图标进行打印,颜色选取一般为首字母,
plt.xlabel('12') #y,label 顾名思义及是Y轴的信息,
plt.ylabel('10') #同理
plt.title("你好") #放置文本信息,
#一下模块不在进行导入,已经导入过的模块默认导入
Improt numpy as np
t=np.arange(0.,5.,0.1) #0到5生成步距为0.2的数组
plt.plot(t,t,'r--',t,t**2,'bs',t,t*t,'g^')
现在我们来看看通过子图显示画图
def f(t): #定义函数
returnnp.exp(-t)*np.cos(2*np.pi*t) #e-t*cos(2*pi*t)
t1=np.arange(0.,5,0.1)
t2=np.arange(0.,5,0.01)
plt.figure(1)
plt.subplot(211) #子图1在第一行第一列
plt.plot(t1,f(t1),'bo',t2,f(t2),'k')
plt.figure(2)
plt.subplot(212) #图二在第一行第二列
plt.plot(t2,np.cos(2*np.pi*t2),'r--')
看一下运行的结果
Subplot还可以按照数组的形式生成子图
x,y=plt.subplots(2,3) #会返回多个子图 x(2.3) 6个子图,返回y是已经创建的subplot的对象numpy数组
nrows | subplot的行数 |
ncols | subplot的列数 |
sharex | 所有subplot应该使用相同的X轴刻度(调节xlim将会影响所有subplot) |
sharey | 所有subplot应该使用相同的Y轴坐标(调节ylim将会影响所有subplot) |
subplot_kw | 用于创建各subplot的关键字典 |
**fig_kw | 创建figure时的其他关键字,如plt.subplots(2,2,figsize=(8,6)) |
Plt.hist()的使用
hist函数可以直接绘制直方图。
n, bins, patches= plt.hist(arr, bins=10, normed=0, facecolor='black', edgecolor='black',alpha=1,histtype='bar')
hist的参数非常多,但常用的就这六个,只有第一个是必须的,后面四个可选
arr: 需要计算直方图的一维数组
bins: 直方图的柱数,可选项,默认为10
normed:是否将得到的直方图向量归一化。默认为0
facecolor:直方图颜色
edgecolor:直方图边框颜色
alpha:透明度
histtype:直方图类型,‘bar’, ‘barstacked’, ‘step’, ‘stepfilled’
返回值 :
n: 直方图向量,是否归一化由参数normed设定
bins: 返回各个bin的区间范围
patches:返回每个bin里面包含的数据,是一个list
看一个例子
mu,sigma = 100, 15
x = mu+ sigma * np.random.randn(110) # 生成数组数据
n,bins, patches = plt.hist(x, 80, normed=1, facecolor='g', alpha=0.75)
plt.xlabel('Smarts')
plt.title('Hist')
plt.text(50, .025,r'$\mu=100,\ \sigma=15$') # 任意位置添加文本,# # #plt.test(x,y)文本放置位置
plt.axis([60,150, 0, 0.03])
plt.grid(True)
程序效果图
将图标保存到文件
利用plt.savefig可以将当前图标保存到文件。该方法相当于Figure对象的实例方法savefig。例如,要将图标保存为SVG文件,你只需输入:plt.savefig('figpath.svg')。文件类型是通过文件扩展名推断出来的
Figure.savefig方法的参数及说明如下表所示:
参数 说明
fname 含有文件路径的字符串或Python的文件型对象。图像格式由文件扩展名推断得出
dpi 图像分辨率(每英寸点数),默认为100
favecolor, edgecolor 图像的背景色,默认为”w”(white)
format 显示设置文件格式(“png”, “pdf”,“svg”, “ps”, “eps”…)
bbox_inches 图标需要保存的部分。如果设置为”tight”,则将尝试检出图标周围的空白部分