Ich verwende Pyplot, um einen Klimographen zu erstellen, der auf der Visualisierung von Walter / Lieth basiert.
Ein weiterer Klimograph von Walter / Lieth
Wie Sie auf den Bildern sehen können (die Links oben), wird die rechte y-Achse ab dem Wert 100 komprimiert. Ihr visueller Abstand wird kleiner, während ihre numerischen Intervalle größer werden.
Ich kann nicht herausfinden, wie ich das in Pyplot erreichen kann. Ich weiß, wie man die Häkchenwerte einstellt, um eine benutzerdefinierte Skala zu erstellen, aber natürlich sind sie immer gleich weit entfernt. Wie Sie in meinem Diagramm sehen können, entspricht der eingezeichnete Raum auf der rechten y-Achse dem Intervall der Werte:
Vielleicht könnte jemand einen Hinweis geben, wie man den in den beiden obigen Links gezeigten Effekt erzielt.
Prost!
Ein Beispiel für Sie:
import matplotlib.pyplot as plt
axes = plt.axes()
axes.set_xlim([-10, 10]) #whatever, optional
axes.set_ylim([0, 1.0]) # whatever, optional
axes.set_xticks([-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5])
axes.set_yticks([0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100,150,200,300])
plt.plot(x, norm.pdf(x)) #random filler
plt.plot(x, norm.pdf(x, 70.0, 0.1)) #another absolutely random filler
plt.show()
Mein Beispiel zeigt nur, wie Sie die Y-Koordinatenticks optimieren können, wie Sie wissen wollten. Tut mir leid, dass ich anscheinend nicht zu hilfreich bin. Ich verstehe die Ablehnung überhaupt nicht. Es wird wahrscheinlich bessere Antworten geben, denke ich.
Für die tatsächliche Komprimierung der Proben (Daten) gibt es einige Möglichkeiten:
Verwenden Sie eine Funktion, um die Daten zu skalieren. Vielleicht in Schritten definiert. dh für 0 <n <10 lassen Sie es wie es ist, für 10 <= n <100 verwandeln Sie sich in 11 ~ 19 usw.
Verwenden Sie Protokollskalen ( https://matplotlib.org/examples/pylab_examples/log_demo.html ).
Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.
Bei Verstößen wenden Sie sich bitte [email protected] Löschen.
Lass mich ein paar Worte sagen