2012-12-05 22 views
5

Ich versuche herauszufinden, wie Mathematicas Farbschemata mit diskreten Daten verwendet werden. Zum Beispiel habe ich eine Liste von Zeitreihen im FormularAngeben der Farbreihenfolge in ListPlot

s={{{1946,1},{1947,2},{1948,3}},{{1946,-2},{1947,-1.8}}} 

und so weiter; es gibt etwa 30 Serien unterschiedlicher Länge. Wenn ich diese Serien unter Verwendung ListPlot plotte/verbinde/überlagere, gibt es eine Weise, Mathematica anzuweisen, Farben für jedes Diagramm auszuwählen, indem man gleichmäßig beabstandete Farben von einem ColorFunction nimmt, das von ColorData (z. B. "Rainbow") zurückgegeben wird?

Wie würde ich dies mit einer Direktive kombinieren, um jedes Diagramm Thick zu machen?

ListPlot[s,Joined->True,PlotStyle->{Thick,???}] 

Antwort

9

Stellen Sie sich Ihre Daten - eine zerlumpte Liste von 30 Listen unterschiedlicher Länge:

data = Table[.5 k + RandomReal[1, RandomInteger[{8, 14}]], {k, 30}]; 

Ist es das, was Sie brauchen?

ListPlot[data, Joined -> True, 
     PlotStyle -> [email protected]{Thick, ColorData["Rainbow"] /@ Range[0, 1, 1/29]}] 

enter image description here

+0

Perfect. Vielen Dank! – mfvonh

+0

Ich bin verwirrt; sollte "Flatten" nicht 'Faden' sein? Warum funktioniert das Formular "Flatten"? Ich würde erwarten, dass die erste Zeile "Thick" und dann der Rest in Farbe stylen würde. –

+0

@ Mr.Wizard Sie haben Recht, 'Thread' ist sauberer, aktualisiert. Ich weiß nur aus Erfahrung, dass "Flatten" funktioniert. –

Verwandte Themen