mpl_toolkits.mplot3d.axes3d.Axes3D.apply_aspect#

Axes3D.apply_aspect(position=None)[Quelle]#

Passt den Axes für ein bestimmtes Daten-Seitenverhältnis an.

Abhängig von get_adjustable wird entweder die Achsenbox (Position) oder die Ansichtslimits geändert. Im ersteren Fall beeinflusst get_anchor die Position.

Parameter:
positionNone oder .Bbox

Hinweis

Dieser Parameter existiert aus historischen Gründen und gilt als intern. Endbenutzer sollten ihn nicht verwenden.

Wenn nicht None, definiert dies die Position der Achsen innerhalb der Abbildung als eine Bbox. Weitere Details finden Sie unter get_position.

Siehe auch

matplotlib.axes.Axes.set_aspect

Für eine Beschreibung der Behandlung des Seitenverhältnisses.

matplotlib.axes.Axes.set_adjustable

Legt fest, wie der Axes angepasst wird, um das erforderliche Seitenverhältnis zu erreichen.

matplotlib.axes.Axes.set_anchor

Setzt die Position bei zusätzlichem Platz.

matplotlib.figure.Figure.draw_without_rendering

Aktualisiert alle veralteten Komponenten einer Abbildung.

Anmerkungen

Dies wird automatisch aufgerufen, wenn jede Achse gezeichnet wird. Möglicherweise müssen Sie sie selbst aufrufen, wenn Sie die Position und/oder die Ansichtslimits der Achsen aktualisieren müssen, bevor die Abbildung gezeichnet wird.

Eine Alternative mit breiterem Umfang ist Figure.draw_without_rendering, die alle veralteten Komponenten einer Abbildung aktualisiert, nicht nur die Positionierung / Ansichtslimits einer einzelnen Achse.

Beispiele

Ein typisches Anwendungsbeispiel wäre das folgende. imshow setzt das Seitenverhältnis auf 1, aber die Anpassung der Achsenposition und -ausdehnung, um dies widerzuspiegeln, wird aus Leistungsgründen bis zum Rendern verschoben. Wenn Sie die Achsengröße vorher wissen möchten, müssen Sie apply_aspect aufrufen, um die korrekten Werte zu erhalten.

>>> fig, ax = plt.subplots()
>>> ax.imshow(np.zeros((3, 3)))
>>> ax.bbox.width, ax.bbox.height
(496.0, 369.59999999999997)
>>> ax.apply_aspect()
>>> ax.bbox.width, ax.bbox.height
(369.59999999999997, 369.59999999999997)