PDA

View Full Version : Mathematica PlotStyle->{color,color,color} not working


rynlee
May10-11, 11:54 AM
Hi All, running into a bit of a mathematica issue. I put the following code in to plot:

Plot[Im[correlationList], {t, 0, timeEnd},
PlotStyle -> ColorList]

correlationList is a list of complex functions that have been evaluated at t. It correctly plots all of them (if I change it to correlationList[[2]] for example it only plots the second function, etc., as is it plots all of the functions on the same plot)

(I've omitted PlotRange -> {Full, {-1, 1}}, ImageSize -> Large, from the above command, but that's in there too)

ColorList is a list of Hue[] evaluations, i.e.
In:ColorList
Out: {Hue[1/10],Hue[1/5],Hue[3/10],Hue[2/5],Hue[1/2],Hue[3/5],Hue[7/10],Hue[4/5],Hue[9/10],Hue[1]}

When I plot this however, it colors *all* of the curves the *last* color in the color list.

This behavior holds even when I change the PlotStyle term, for example if I use {Orange,Blue,Green} instead of ColorList, it plots *all* of the functions green, none orange or blue. So it always takes the last member of the list. I'm not sure why it's doing this.

I tried transposing ColorList (which I generate from an Array[0&,10] command, then filled in with a Do[] loop), but that just gave error messages.

Thanks for any help,

rynlee

CompuChip
May10-11, 01:07 PM
I'm thinking that you might need to Plot[{Im[correlationList[[1]]], ..., Im[correlationList[[n]]]}] rather than
Plot[Im[{correlationList[[1]], ..., correlationList[[n]]} ], if you get what I mean.

So what happens if you plot Evaluate[Im[correlationList]] instead?
Or first convert it to a list, e.g. plotting Im /@ correlationList?

rynlee
May10-11, 03:36 PM
yep the evaluate[] did it! Thanks!

rynlee
May10-11, 05:27 PM
The final function (just to show what it should look like if anyone else has the same problem):