Matplotlib-Achsen-Teilstrichbeschriftungen für numerische Genauigkeit anpassen
Bei der Verwendung der Matplotlib-Bibliothek in Python zum Plotten einfacher x-y-Datensätze kommt es häufig vor, dass Achsenwerte auftreten Wechsel vom Standard-Zahlenformat zur wissenschaftlichen Notation mit Exponentialform beim Vergrößern bestimmter Diagrammabschnitte. Dies kann unerwünscht sein, da dadurch die ursprünglichen Werte verdeckt werden.
Um dieses Verhalten zu verhindern und die ursprüngliche numerische Formatierung beizubehalten, ist es notwendig, die Formatierung der Achsenteilstrichbeschriftung anzupassen. Standardmäßig verwendet Matplotlib einen ScalerFormatter für Tick-Beschriftungen. Dieser Formatierer nutzt möglicherweise eine konstante Verschiebung, was zu einer wissenschaftlichen Notation führt, wenn es um sehr kleine gebrochene Änderungen in sichtbaren Werten geht.
Um diese konstante Verschiebung zu deaktivieren und standardmäßige numerische Formatierung zu erzwingen, kann der folgende Code verwendet werden:
<code class="python">import matplotlib.pyplot as plt plt.plot(np.arange(0, 100, 10) + 1000, np.arange(0, 100, 10)) ax = plt.gca() ax.get_xaxis().get_major_formatter().set_useOffset(False) plt.draw()</code>
Für Fälle, in denen eine wissenschaftliche Notation völlig unerwünscht ist, kann der folgende Code verwendet werden:
<code class="python">ax.get_xaxis().get_major_formatter().set_scientific(False)</code>
Alternativ kann eine globale Kontrolle über dieses Verhalten über den axis.formatter.useoffset rcparam erreicht werden. Durch Ändern dieses Parameters ist es möglich, entweder standardmäßige numerische Formatierung oder wissenschaftliche Notation einheitlich über alle Achsenstrichbeschriftungen hinweg zu erzwingen.
Diese Anpassung stellt sicher, dass die numerische Genauigkeit auch beim Vergrößern von Diagrammen erhalten bleibt, was den Benutzern eine intuitivere Bedienung ermöglicht und präzise Darstellung ihrer Daten.
Das obige ist der detaillierte Inhalt vonWie kann die numerische Genauigkeit in Matplotlib-Achsen-Tick-Beschriftungen erhalten bleiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!