Hinzufügen von y=x in eine matplotlib scatter-plot, wenn ich habe nicht gehalten überblick über all die Daten, Punkte, ging in
Hier finden Sie den code, funktioniert scatter-plot der Anzahl der verschiedenen Serien mit matplotlib und fügt dann die Zeile y=x:
import numpy as np, matplotlib.pyplot as plt, matplotlib.cm as cm, pylab
nseries = 10
colors = cm.rainbow(np.linspace(0, 1, nseries))
all_x = []
all_y = []
for i in range(nseries):
x = np.random.random(12)+i/10.0
y = np.random.random(12)+i/5.0
plt.scatter(x, y, color=colors[i])
all_x.extend(x)
all_y.extend(y)
# Could I somehow do the next part (add identity_line) if I haven't been keeping track of all the x and y values I've seen?
identity_line = np.linspace(max(min(all_x), min(all_y)),
min(max(all_x), max(all_y)))
plt.plot(identity_line, identity_line, color="black", linestyle="dashed", linewidth=3.0)
plt.show()
Um dies zu erreichen, habe ich den überblick zu behalten, die x-und y-Werte ein, ging in die Punktwolke so, dass ich weiß, wo identity_line
sollten Anfang und Ende. Gibt es eine Möglichkeit, die ich bekommen kann y=x zu zeigen, auch wenn ich nicht eine Liste aller der Punkte, die ich aufgetragen? Ich würde denken, dass etwas in matplotlib kann mir eine Liste aller der Punkte nach der Tat, aber ich war nicht in der Lage, herauszufinden, wie man dieser Liste.
InformationsquelleAutor kuzzooroo | 2014-08-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht zu wissen nichts über Ihre Daten per se. Sie können sich mit dem, was Ihr matplotlib Achsen-Objekt wird Ihnen sagen, über die Daten.
Siehe unten:
Hier ist der gute Teil:
Et voilà
InformationsquelleAutor Paul H