Matplotlib';s图形和轴说明
我对matplotlib非常陌生,尽管我知道它可能非常强大。 我已经阅读了大量教程和示例,要理解matplotlib的图形和轴是如何工作的,真是一件麻烦事。我正在用附图说明我试图理解的内容 我知道如何创建以英寸为单位的特定大小的地物实例。然而,困扰我的是如何创建子图,然后在每个子图中创建轴,并使用相对坐标(底部=0,左侧=0,顶部=1,右侧=1),如图所示。 例如,我想创建一个“父”绘图区域(比如(6in,10in))。然后,我想创建两个子地块区域,每个区域的大小为(3in,3in),距离顶部1in,两个垂直子地块区域之间的空间为2in,距离底部1in。然后,在左侧1英寸空间,在写入端2英寸空间。同时,我希望能够得到子地块区域相对于主地块区域的坐标。 然后,在第一个子地块区域内,我想创建两个轴实例,轴1具有关于子地块区域1(0.1,0.7,0.7,0.2)和轴2(0.1,0.2,0.7,0.5)的坐标。当然,我希望能够在这些轴上绘图,例如,Matplotlib';s图形和轴说明,matplotlib,figure,axes,Matplotlib,Figure,Axes,我对matplotlib非常陌生,尽管我知道它可能非常强大。 我已经阅读了大量教程和示例,要理解matplotlib的图形和轴是如何工作的,真是一件麻烦事。我正在用附图说明我试图理解的内容 我知道如何创建以英寸为单位的特定大小的地物实例。然而,困扰我的是如何创建子图,然后在每个子图中创建轴,并使用相对坐标(底部=0,左侧=0,顶部=1,右侧=1),如图所示。 例如,我想创建一个“父”绘图区域(比如(6in,10in))。然后,我想创建两个子地块区域,每个区域的大小为(3in,3in),距离顶部1
ax1.plot()…
如果您可以提供一个示例代码来实现这一点,那么我可以研究它。
非常感谢您的帮助 a
子地块
和a轴
对象实际上是相同的东西。在matplotlib中并没有您所描述的“子地块”。您可以使用gridspec
创建三个轴
对象,而无需将它们放入“子地块”
有几种不同的方法可以在图形中创建轴
实例
将在给定的位置创建一个轴
实例(您在地物坐标中为其指定[左、下、宽、高]
(即0,0
为左下,1,1
为右上)
还将创建一个Axes
实例。在这种情况下,您不给它一个要在其中创建的矩形,而是给它您想要的子批次的行数和列数,然后给它plot\u number
,其中plot\u number
从1开始,首先跨行递增,最大值为nrows*ncols
。
例如,要在两行两列的栅格中创建左上角的轴,可以执行以下操作:
fig.add_subplot(2,2,1)
还是速记
fig.add_subplot(221)
还有一些更可定制的方法来创建轴,例如,允许轻松创建许多不同形状和大小的子地块。子地块和轴对象实际上是一样的。实际上没有“子地块”正如您在matplotlib中所描述的那样。您只需使用
gridspec
创建三个轴
对象,而无需将它们放入“子地块”那么,为什么matplotlib有两个单独的类,当它们是相同的东西时,Axes
和subplot
?fig.add\u subplot
返回一个Axes
实例。subplot
不是一个类,它是一个返回轴的函数。嗨@tom,那么fig.add\u subplot
和