ich eine große Pandas Datenrahmen, die ich einen Plot erstellen möchten - hier ist ein vereinfachtes Beispiel:Farbcode ein Pandas Plot basiert auf Spaltenwerte
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
colors = iter(cm.rainbow(np.linspace(0, 1, 4)))
sample = pd.DataFrame({'X': [1,2,3,1,2,3,1,2,1,2,3],
'Y': [1,1,1,2,2,2,3,3,4,4,4]})
Ich möchte eine farbcodierte Liniendiagramm erstellen, mit Farbe auf X Spaltenwerte basierend Ändern (X-Werte sind immer die gleichen Zahlen wiederholt, aber die Länge ist nicht immer gleich) - der Standard-Diagramm ist:
plt.plot(sample['X'], sample['Y'], linestyle = '-')
, aber ich möchte den Prozess automatisieren, so dass jedes Mal X-Spalte startet eine neue Farbe zu haben - das ist das Ergebnis, das ich
plt.plot(sample['X'][0:3], sample['Y'][0:3], linestyle = '-', color = next(colors))
plt.plot(sample['X'][3:6], sample['Y'][3:6], linestyle = '-', color = next(colors))
plt.plot(sample['X'][6:8], sample['Y'][6:8], linestyle = '-', color = next(colors))
plt.plot(sample['X'][8:], sample['Y'][8:], linestyle = '-', color = next(colors))
jeder Vorschlag, wie dies zu erreichen haben?
Dank - Ihre alternative Lösung gearbeitet Ich (ich habe Zeitstempel, so kann ich eine eindeutige ID-Spalte für jede Reihe von Zahlen) – Dimitris