Разница между осью рисунка и вспомогательной осью графика?

#python #matplotlib

#python #matplotlib

Вопрос:

Мне было интересно, может ли кто-нибудь помочь с пониманием вложенных графиков.

Термин ось часто используется с окнами рисунка и подзаголовками, и я хотел понять, существует ли техническая разница между осью подзаголовка и осью окна рисунка.

Если у меня есть фигура 2 x 2, позволяющая мне 4 подзаголовка, тогда каждый подзаголовок будет иметь свою собственную ось X * Y, но что это значит для окна рисунка иметь оси?

Кто-нибудь может объяснить?

Ответ №1:

Термин «ось» часто используется для окон рисунка и вложенных графиков

Фигура содержит одну или несколько осей. Оси, помимо прочего, содержат оси x и y.
Анатомия фигуры

что означает, что окно рисунка имеет оси

Из вводного руководства

Оси
Это то, что вы называете «графиком», это область изображения с пространством данных. Данная фигура может содержать много осей, но данный объект Axes может находиться только на одной фигуре. Оси содержат два (или три в случае 3D) объекта оси (имейте в виду разницу между осями и Axis)…

Фигура имеет одну или несколько осей. Оси одного и того же типа, независимо от того, являются ли они осями подзаголовка или осями фигуры без подзаголовков.

Рисунок с несколькими осями.

 >>> import matplotlib as mpl
>>> from matplotlib import pyplot as plt

>>> fig,ax = plt.subplots(2,2)
>>> fig
<Figure size 640x480 with 4 Axes>
>>> ax
array([[<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A6AC707F0>,
        <matplotlib.axes._subplots.AxesSubplot object at 0x0000025A79F52A60>],
       [<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A7E960A90>,
        <matplotlib.axes._subplots.AxesSubplot object at 0x0000025A7E98C040>]],
      dtype=object)
>>> fig.axes
[<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A6AC707F0>, <matplotlib.axes._subplots.AxesSubplot object at 0x0000025A79F52A60>, <matplotlib.axes._subplots.AxesSubplot object at 0x0000025A7E960A90>, <matplotlib.axes._subplots.AxesSubplot object at 0x0000025A7E98C040>]
>>>
  

Рисунок с одной осью.

 >>> fig,ax = plt.subplots()
>>> ax
<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A678746A0>
>>> fig.axes
[<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A678746A0>]
>>>
>>> isinstance(fig.axes[0],mpl.axes.Axes)
True
  

Рисунок с одной осью. Создайте график с pyplot помощью, затем получите текущую фигуру и оси.

 >>> lines = plt.plot([1,2,3,4,5])
>>> lines
[<matplotlib.lines.Line2D object at 0x0000025A67857C10>]
>>> fig = plt.gcf()
>>> fig.axes
[<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A678746A0>]
>>> plt.gca()
<matplotlib.axes._subplots.AxesSubplot object at 0x0000025A678746A0>
>>>
  

У осей есть оси x и y.

 >>> ax = plt.gca()
>>> ax.xaxis
<matplotlib.axis.XAxis object at 0x0000025A67874AF0>
>>> ax.yaxis
<matplotlib.axis.YAxis object at 0x0000025A67861370>
>>>
>>> isinstance(ax.xaxis,mpl.axis.Axis)
True
  

Учебник художника стоит прочитать (как и другие учебные пособия).