Ich versuche, die Reihenfolge einer Reihe von zeitlich sortierten Werten zu plotten, in denen jeder Wert durch eine andere Farbe dargestellt wird. Zum Beispiel, wenn meine Werte sind wieSequence index plot python
state_seq = [2, 2, 2, 2, 0, 0, 0, 1, 3, 6, 3, 3, 3, 0, 0]
time_seq = ['2013-05-29 09:31:00', '2013-05-29 09:46:00', '2013-07-23 12:28:00', '2013-07-23 01:53:00', '2013-08-05 02:02:00', '2013-08-05 02:08:00', '2013-08-05 04:28:00', '2013-08-06 10:20:00', '2013-08-06 03:03:00', '2013-08-06 04:13:00', '2013-08-06 04:17:00', '2013-08-06 04:36:00', '2013-08-07 11:07:00', '2013-08-07 12:28:00', '2013-08-07 12:31:00']
Ich möchte jedes einzigartiges Element von state_seq zu mit einer Farbe und zeichnen Sie die Sequenz dargestellt werden. Ab jetzt bin ich mit Seaborn palplot dies in triviale Weise zu erledigen wie
color_set = ["#95a5a6", "#34495e","#9b59b6", "#3498db", "#800000", "#2ecc71", 'y', '#FF4500']
palette = list()
for s in state_seq:
palette.append(color_set[s])
sns.palplot(palette)
Was mich so etwas wie dieses gibt (diese Ausgabe mit dem Code-Snippet nicht genau kann übereinstimmen - ich den Code bearbeitet für eine bessere Klarheit)
Dieser Ansatz hat einen Rückschlag, den ich meine Zeitbeschriftungen in X-Achse nicht darstellen kann. Gibt es eine bessere Python-Alternative, die vielleicht dem hier erläuterten R-Paket TraMineR ähnelt? Is it possible to make a graph with pattern fills using TraMineR and R base graphs?
warum nicht die * barchart verwenden * von 'matplotlib' mit gleich hohen Stangen (W/O-Grenzen) und entfernt y-Achse? – jbndlr