Matplotlib

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
plt.plot([3,1,4,5,2])
plt.ylabel('grade')
#输入一维数组默认其是y轴 此时x轴默认是索引
plt.savefig('test',dpi=600)#savefig将输出图形存储为文件,默认png格式,dpi则是修改输出质量 dpi=600 600个像素点
plt.show()

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import numpy as np
def f(t):
    return np.exp(-t)*np.cos(2*np.pi*t)
a=np.arange(0.0,5.0,0.02)
plt.subplot(211)#逗号可以省略
plt.plot(a,f(a))

plt.subplot(212)
plt.plot(a,np.cos(2*np.pi*a),'r--')
plt.show()
#重点在于 子绘图区域的概念

中文显示(rcParams)

#中文显示
import matplotlib.pyplot as plt
import numpy as np
import matplotlib
a=np.arange(10)
plt.plot(a,a*2,a,a*3,a,a*4)
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.size']=20
plt.xlim(-2*np.pi,2*np.pi)
plt.ylim(-1,1)
plt.ylabel('纵轴')
plt.show()

中文显示(fontproperties)

import matplotlib.pyplot as plt
import numpy as np

a=np.arange(0.0,5.0,0.02)
plt.plot(a,np.cos(2*np.pi*a),'r--')
plt.ylabel('纵轴:振幅',fontproperties='SimHei',fontsize=20,color='green')
plt.xlabel('横轴:时间',fontproperties='SimHei',fontsize=20)
 #plt.title有问题 但不知道在哪
plt.title(r'正弦波实力 $y=cos(2\pi x)$',fontproperties='SimHei',fontsize=25)#Latex 文本 $$中间是Latex语法  $y=cos(2\pi x)$
plt.text(2,1,r'$\mu=100$',fontsize=15)
#plt.annotate(r'$\mu=100$',xy=(2,1),xytext=(3,1.5),arrowprops=dict(facecolor='black',shrink=0.1,width=2))增加一个箭头  dict是字典

plt.axis([-1,6,-2,2])
plt.grid(True)#加入网格曲线
plt.show()

坐标轴刻度

plt.xlim / plt.ylim

plt.axes

子区域绘图

#绘制子区域
plt.subplot2grid((3,3),(0,0),colspan=3)
plt.subplot2grid((3,3),(1,0),colspan=2)
plt.subplot2grid((3,3),(1,2),rowspan=2)
plt.subplot2grid((3,3),(2,0))
plt.subplot2grid((3,3),(2,1))

#子区域绘图
import matplotlib.gridspec as gridspec
import matplotlib.pyplot as plt
import numpy as np
gs=gridspec.GridSpec(3,3)
ax1=plt.subplot(gs[0,:])
ax2=plt.subplot(gs[1,:-1])
ax3=plt.subplot(gs[1:,-1])
ax4=plt.subplot(gs[2,0])
ax5=plt.subplot(gs[2,1])

#饼状图
import matplotlib.pyplot as plt
labels=‘frogs’,‘hogs’,‘dogs’,‘logs’
sizes=[15,30,45,10]
explode=(0,0.1,0,0)

plt.pie(sizes,explode=explode,labels=labels,autopct=’%1.1f%%’,shadow=True, startangle=45)

plt.axis(‘equal’)
plt.show()

#直方图
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0)
mu, sigma = 100,20
a=np.random.normal(mu,sigma,size=100)

plt.hist(a,20,normed=1,histtype=‘stepfilled’,facecolor=‘b’,alpha=0.75) #20 有20个直方图 bin 直方的个数
plt.title(‘Histogram’)

plt.show()

#面向对象方法 绘制极坐标图

  • 极坐标图每个参数不完全明白

import matplotlib.pyplot as plt
import numpy as np
N=10 #数据个数
theta=np.linspace(0.0,2np.pi,N,endpoint=False) #按个数等分N个不同角度 endpoint啥意思
radii=10
np.arange(N)
width=np.pi/4*np.random.rand(N) #四分之Π

ax=plt.subplot(111,projection=‘polar’) #polar极坐标
bars=ax.bar(theta,radii,width=width,bottom=0.0) # left height width 最关键

for r,bar in zip(radii,bars):
bar.set_facecolor(plt.cm.viridis(r/10.))
bar.set_alpha(0.5)

plt.show()

plt.title这一行代码出现问题 但是不知道问题在哪

函数/方法汇总

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值