Matplotlib基础入门
折线图
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']='SimHei'
plt.rcParams['axes.unicode_minus']=False
plt.figure(figsize=(8,4),facecolor='pink')
plt.plot([1,2,3,4],[3,5,4,6])
plt.show()
![image-20201023112354154](https://i-blog.csdnimg.cn/blog_migrate/beaea3ff44110c932282fe88b6205b79.png)
细化折线图
plt.figure(figsize=(8,4))
x=[-1,1,3,5]
y=[5,7,1,3]
x1=list(zip(*[(-2,1),(0,4),(2,2),(4,3)]))[0]
y1=list(zip(*[(-2,1),(0,4),(2,2),(4,3)]))[1]
plt.plot(x,y,label='第一条线')
plt.plot(x1,y1,label='第二条线')
plt.legend()
plt.xlabel('x轴')
plt.ylabel('y轴')
plt.title('图的标题')
![image-20201023112604197](https://i-blog.csdnimg.cn/blog_migrate/6e2afd30e3e3ee39bef42009a174b447.png)
Matplotlib进阶
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']='SimHei'
plt.rcParams['axes.unicode_minus']=False
折线图 plt.plot
plt.figure(figsize=(8,4))
x=[-1,1,3,5]
y=[5,7,1,3]
x1=list(zip(*[(-2,1),(0,4),(2,2),(4,3)]))[0]
y1=list(zip(*[(-2,1),(0,4),(2,2),(4,3)]))[1]
plt.plot(x,y,label='第一条线')
plt.plot(x1,y1,label='第二条线',color='pink')
plt.legend()
plt.xlabel('x轴')
plt.ylabel('y轴')
plt.title('图的标题')
![image-20201023112944375](https://i-blog.csdnimg.cn/blog_migrate/02b48e1951a7cbbaa750ff90cc2bafde.png)
柱状图 plt.bar
print(x,y,x1,y1)
plt.bar(x,y,label='柱状图-01',color='yellow')
plt.bar(x1,y1,label='柱状图-02',color='pink')
plt.legend()
plt.xlabel('x轴')
plt.ylabel('y轴')
plt.title('图的标题')
水平柱状图 plt.barth
plt.barh(x,y,label='柱状图-01',color='yellow')
plt.barh(x1,y1,label='柱状图-02',color='pink')
plt.legend()
plt.xlabel('x轴')
plt.ylabel('y轴')
plt.title('图的标题')
![image-20201023113120082](https://i-blog.csdnimg.cn/blog_migrate/d36e862a7717426dc1e85f90b60a1aa9.png)
直方图 plt.hist
import numpy as np
ages=np.random.randint(18,75,200)
ages
![image-20201023113237948](https://i-blog.csdnimg.cn/blog_migrate/819d7b1a4480b5e84cac19cba29b0619.png)
bins=np.arange(1,9)*10
bins
![image-20201023113307775](https://i-blog.csdnimg.cn/blog_migrate/9acacffbdabb32ab911765e5614bf74e.png)
list(range(1,9))
plt.hist(ages,bins,histtype='bar',label='年龄直方图',rwidth=0.8)
plt.show()
饼图 plt.pie
slices=[2,7,12,3]
activites=['eat','sleep','study','play']
colors=['red','blue','purple','pink']
plt.pie(
slices,
labels=activites,
colors=colors,
startangle=45,
shadow=True,
explode=(0.1,0,0,0),
autopct='%.2f%%',
labeldistance=1.1,
pctdistance=0.6,
radius=1.5,
)
plt.show()
散点图 plt.scatter
x = [1,2,3,4,5,6,7,8]
y = [5,4,6,3,7,2,9,3]
plt.scatter(x,y,label='散点图',color='#62BC4A',s=80,marker='*')
plt.legend()
plt.show()
![image-20201023113625444](https://i-blog.csdnimg.cn/blog_migrate/9c1a21b6c44a9fe37c6c2d7f5e905ae8.png)
柱状图标记
plt.figure()
ax1=plt.subplot(1,1,1)
data=np.array([15,20,18,25])
rect=ax1.bar([1,2,3,4],data,width=0.5,color='#079460')
for each in rect:
x=each.get_x()
height=each.get_height()
print(x,height)
ax1.text(x+0.15,height+0.5,f'{height}万')
ax1.set_xticks([1,2,3,4])
ax1.set_xticklabels([f'第{i}季度' for i in '一二三四'])
ax1.set_ylabel('销量单位:(万)')
ax1.set_ylim(0,30)
ax1.grid(True)
ax1.set_title('x公司四季度销量')
![image-20201023115740623](https://i-blog.csdnimg.cn/blog_migrate/f9faa963e5033f803d6b6db42583b24d.png)
一个画布画多个图
plt.figure(figsize=(6,6),dpi=80,facecolor='pink')
plt.subplot(2,1,1)
plt.plot([1,2,3],[2,4,3])
plt.title('画布的区域1')
plt.subplot(2,1,2)
plt.scatter([1,2,3],[2,4,3])
plt.title('画布的区域2')
plt.show()
![image-20201023115844576](https://i-blog.csdnimg.cn/blog_migrate/2bbb1a9a6cc7274685d78dbdfe596041.png)
plt.figure(figsize=(8,4),dpi=80,facecolor='pink')
ax2=plt.subplot(1,2,1)
ax2.plot([1,2,3],[2,4,3])
ax2.set_title('画布的区域1')
ax3=plt.subplot(1,2,2)
ax3.scatter([1,2,3],[2,4,3])
ax3.set_title('画布的区域2')
![image-20201023115914023](https://i-blog.csdnimg.cn/blog_migrate/c921e4443aacd831d22b4dee422361a2.png)