在轴的右/左/右上添加新轴

时间:2013-05-07 02:38:18

标签: matplotlib

如何将轴添加到另一个轴的外部,将其保持在整个图形内? legendcolorbar都具有此功能,但实现的方式相当复杂(对我而言,难以重现)。

1 个答案:

答案 0 :(得分:0)

您可以使用subplots命令来实现此目的,这可以像py.subplot(2,2,1)一样简单,其中前两个数字描述绘图的几何(2x2),第三个是当前绘图编号。一般来说,最好明确如下例

import pylab as py

# Make some data
x = py.linspace(0,10,1000)
cos_x = py.cos(x)
sin_x = py.sin(x)

# Initiate a figure, there are other options in addition to figsize
fig = py.figure(figsize=(6,6))

# Plot the first set of data on ax1
ax1 = fig.add_subplot(2,1,1)
ax1.plot(x,sin_x)

# Plot the second set of data on ax2
ax2 = fig.add_subplot(2,1,2)
ax2.plot(x,cos_x)

# This final line can be used to adjust the subplots, if uncommentted  it will remove  all white space
#fig.subplots_adjust(left=0.13, right=0.9, top=0.9, bottom=0.12,hspace=0.0,wspace=0.0)

Produces this image

请注意,这意味着py.xlabel之类的内容可能无法正常工作,因为您有两个轴。相反,您需要指定ax1.set_xlabel("..")这使代码更容易阅读。

可以找到更多示例here.