Automatische Einstellung von Tick-Positionen#

Festlegen des Verhaltens der automatischen Platzierung von Ticks.

Standardmäßig wählt Matplotlib die Anzahl und Positionen der Ticks so, dass eine angemessene Anzahl von Ticks auf der Achse vorhanden ist und diese an "runden" Zahlen liegen.

Als Ergebnis können sich keine Ticks an den Rändern des Diagramms befinden.

import matplotlib.pyplot as plt
import numpy as np

np.random.seed(19680801)

fig, ax = plt.subplots()
dots = np.linspace(0.3, 1.2, 10)
X, Y = np.meshgrid(dots, dots)
x, y = X.ravel(), Y.ravel()
ax.scatter(x, y, c=x+y)
plt.show()
auto ticks

Wenn Sie Ticks an runden Zahlen beibehalten und auch Ticks an den Rändern haben möchten, können Sie rcParams["axes.autolimit_mode"] (Standard: 'data') auf 'round_numbers' setzen. Dies erweitert die Achsenlimits auf die nächste runde Zahl.

plt.rcParams['axes.autolimit_mode'] = 'round_numbers'

# Note: The limits are calculated at draw-time. Therefore, when using
# :rc:`axes.autolimit_mode` in a context manager, it is important that
# the ``show()`` command is within the context.

fig, ax = plt.subplots()
ax.scatter(x, y, c=x+y)
plt.show()
auto ticks

Der Modus 'round_numbers' für Autolimit_mode wird weiterhin berücksichtigt, wenn Sie einen zusätzlichen Rand um die Daten mit Axes.set_xmargin / Axes.set_ymargin festlegen.

auto ticks

Gesamtlaufzeit des Skripts: (0 Minuten 2,248 Sekunden)

Galerie generiert von Sphinx-Gallery