Matplotlib中的plt和ax画图的区别

有时候的们使用plt.plot(),有时候使用ax.plot(),这二者画图有区别吗

首先,来看看Matplotlib画图的具体构成:

 

如果将Matplotlib绘图和我们平常画画相类比,可以把figure想象成一张纸(一般被称之为画布),axes代表的则是纸中的一片区域

 

回到上面说的,plt.plot()和ax.plot()的区别:

import matplotlib.pyplot as plt 
import math
import numpy as np
x=np.arange(1,10)
y=x**2

#plt.plot()
plt.figure()
plt.plot(x,y)  
plt.show() 


#ax.plot()
fig,ax=plt.subplots()
ax.plot(x,y)
plt.show()

 

 结果是一样的,区别在于:

(1)plt.plot()先生成一个figure画布,然后在这个画布上隐式生成的画图区域上画图

(2)ax.plot()同时生成了fig和ax对象,然后用ax对象在其区域上画图,推荐使用该方式

 

posted on 2020-07-27 10:49  小小喽啰  阅读(6063)  评论(0编辑  收藏  举报