Python数据分析入门(二十四):绘图分析——Axes容器
Axes容器:
Axes
容器是用来创建具体的图形的。比如画曲线,柱状图,都是画在上面。所以之前我们学的使用plt.xx
绘制各种图形(比如条形图,直方图,散点图等)都是对Axes
的封装。比如plt.plot
对应的是axes.plot
,比如plt.hist
对应的是axes.hist
。针对图的所有操作,都可以在Axes
上找到对应的API
。另外后面要讲到的Axis
容器,是轴的对象,也是绑定在Axes
上面。
Axes的类定义介绍:https://matplotlib.org/api/axes_api.html#matplotlib.axes.Axes
1. 设置x和y轴的最大值和最小值:
设置完刻度后,我们还可以设置x轴和y轴的最大值和最小值。可以通过set_xlim/set_ylim
来实现:
fig = plt.figure() axes = fig.add_subplot(111) axes.plot(np.random.randn(10)) # 设置x轴的最大值和最小值 axes.set_xlim(-2,12) # 设置y轴的最大值和最小值 axes.set_ylim(-3,3)
2. 添加文本:
之前添加文本我们用的是annotate
,但是如果不是需要做注释,其实还有另外一种更加简单的方式,那就是使用text
方法:
data = np.random.randn(10) fig = plt.figure() axes = fig.add_subplot(111) axes.plot(data) # 添加文本,比annotate更加方便 axes.text(0,0,"hello")
3. 绘制双Y轴:
fig = plt.figure() ax1 = fig.add_subplot(211) ax1.bar(np.arange(0,10,2),np.random.rand(5)) ax1.set_yticks(np.arange(0,1,0.25)) ax2 = ax1.twinx() #克隆一个共享x轴的axes对象 ax2.plot(np.random.randn(10),c="b") plt.show()
效果图如下: