matplotlib Y-Achsenbeschriftung funktioniert manchmal nicht

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
hwm
User
Beiträge: 39
Registriert: Mittwoch 20. April 2005, 23:33

Habe folgendes Problem:

ich male mit matplotlib und numpy einen Graphen. Merkwürdigerweise wird die Y-Achse mal korrekt, und mal nicht korrekt beschriftet.

Das Coding sieht so aus:

Code: Alles auswählen

def do_the_plot(self, res, measure, text_y):
        print (res, measure)
        self.mpl.canvas.ax.clear()
        self.x = np.arange(len(res))
        self.y = np.array(measure)
        self.mpl.canvas.ax.set_xlim(xmin = -0.25, xmax = len(res) - 0.75)
        self.mpl.canvas.ax.get_yaxis().grid(True)
        self.mpl.canvas.ax.set_ylabel(text_y)
        self.mpl.canvas.ax.plot(self.x, self.y, linewidth=2)
        self.mpl.canvas.draw()
In res steht folgendes:
[('Indoor', '20150218-0006', 20, 1047.9, 41, 559, 39, 0), ('Indoor', '20150218-0016', 19.9, 1048.1, 41, 570, 39, 0), ('Indoor', '20150218-0026', 19.8, 1048.3, 46, 570, 39, 0), ('Indoor', '20150218-0036', 19.8, 1048.1, 44, 579, 39, 0)]
und in measure das (also immer der 4. Wert in res):

Code: Alles auswählen

[1047.9, 1048.1, 1048.3, 1048.1]
Geplottet werden aber in der Y-Achse Werte von 0.00 bis 0.40

Habe ich allerdings in measure folgendes:

Code: Alles auswählen

[20, 19.9, 19.8, 19.8]


funktioniert alles völlig korrekt.

Was aber völlig merkwürdig ist: mal wird der erste Plot korrekt ausgegeben, und mal nicht, nicht rekonstruierbar, aber in Abhängigkeit von der Anzahl der Werte in measures. Hat da jemand eine Idee?
Antworten