Können Sie bitte etwas Matplotlib Terminologie klären:Matplotlib Nebenhandlungen vs Achsen vs Achse (Singular/Plural)
- ist das Wort "Nebenhandlungen" ein Synonym für "Achsen" (oder "subplot"?)?
- Was sind Singular/Plural von "Achsen" und "Achse"?
Können Sie bitte etwas Matplotlib Terminologie klären:Matplotlib Nebenhandlungen vs Achsen vs Achse (Singular/Plural)
Dies ist in der Tat eine verwirrende Angelegenheit.
In der englischen Sprache ist der Singular Achse und der Plural Achsen. Zwei der Art Achse bilden zwei Achsen.
In Matplotlib wird ein Objekt matplotlib.axes._axes.Axes
oft einfach "Achsen" genannt. Dieses Objekt enthält eine Xaxis und eine Yaxis, daher der Name. Aber wenn man von diesem Objekt spricht, würde man es im Singular Äxte nennen. Einige davon werden immer noch als Achsen bezeichnet.
Jedes Subplot ist eine Achse, aber es gibt Achsen, die keine Subplots sind. Zum Beispiel Eine Achse, die durch den Subplot-Mechanismus erzeugt wird, ist eine . Diese Klasse leitet sich von matplotlib.axes._axes.Axes
ab, daher ist dieser Teilplot eine Achse. Sie können jedoch auch Achsen über verschiedene Mechanismen erzeugen, z. indem Sie der Figur eine Achse hinzufügen, fig.add_axes()
. Dies wäre dann kein Nebenplot, sondern eine Achse, matplotlib.axes._axes.Axes
.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
print(ax) # Axes(0.125,0.11;0.775x0.77)
print(type(ax)) # <class 'matplotlib.axes._subplots.AxesSubplot'>
ax2 = fig.add_axes([0.8,0.1,0.05,0.8])
print(ax2) # Axes(0.8,0.1;0.05x0.8)
print(type(ax2)) # <class 'matplotlib.axes._axes.Axes'>
Es gibt auch andere Achsen, wie z.B. Inset-Achsen, mpl_toolkits.axes_grid1.parasite_axes.AxesHostAxes
. Dieses Objekt würde auch als Achsen bezeichnet werden.
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes
axins = zoomed_inset_axes(ax, 0.2, loc=3)
print(axins) # Axes(0.125,0.11;0.775x0.77)
print(type(axins)) # <class 'mpl_toolkits.axes_grid1.parasite_axes.AxesHostAxes'>
Achsen ist der Plural der Achse. Ein subplot hat gewöhnlich eine x -Achse und eine y -Achse, die zusammen die der subplot beiden Achsen bilden.
reden Lassen Sie uns in Bezug auf die Funktion/Klassennamen:
Figure.add_subplot
oder pyplot.subplot
zurückgeben AxesSubplot
Objekt. Dieser enthält wiederum ein XAxis
und ein YAxis
Objekt.
fig = plt.figure()
ax = fig.add_subplot(111)
x = ax.xaxis
print(type(ax)) # matplotlib.axes._subplots.AxesSubplot
print(type(x)) # matplotlib.axis.XAxis
XAxis
aus Basisklasse Axis
abgeleitet. AxesSubplot
ist von SubplotBase
und Axes
abgeleitet.
Können Sie etwas mehr über die Gedanken hinter dem Namen "Achsen" erklären? Laut der Abbildung [hier] (https://stackoverflow.com/a/33263181) scheint die Achse eher etwas wie eine Zeichenfläche oder eine schwebende Leinwand zu sein, anstatt nur die x- und y-Achse. Ich frage mich, warum dieses Objekt "Achsen" genannt wird, wenn es wirklich eine Zeichnungsfläche bedeutet. Vielen Dank! – xslittlegrass
@xslittlegrass Die "Achsen" in Matplotlib ist wirklich das 'matplotlib.axes._axes.Axes' Objekt, das die Xaxis, Yaxis, ihre Beschriftungen, Ticks usw. enthält. Die Leinwand ist alles; es kann eine Figur beherbergen und eine Figur kann mehrere Achsen beherbergen. Wir sprechen nicht über Zeichnungsfläche, weil Sie überall zeichnen können, auch außerhalb der Achsen. – ImportanceOfBeingErnest