Mathematica PlotStyle->{color,color,color} not working

  • Context: Mathematica 
  • Thread starter Thread starter rynlee
  • Start date Start date
  • Tags Tags
    Mathematica
Click For Summary
SUMMARY

The issue with the Mathematica code arises from the incorrect usage of the Plot function with the PlotStyle option. Specifically, when using PlotStyle -> ColorList, all curves are rendered in the last color of the list due to the improper evaluation of the correlationList. The solution involves using Evaluate[Im[correlationList]] to ensure that each function is treated individually. This adjustment allows for the correct application of the specified colors from ColorList to each curve in the plot.

PREREQUISITES
  • Familiarity with Mathematica syntax and functions
  • Understanding of complex functions and their representation in plots
  • Knowledge of the Evaluate function in Mathematica
  • Experience with color specifications using Hue[] in Mathematica
NEXT STEPS
  • Learn about the Evaluate function in Mathematica and its applications in plotting
  • Explore advanced plotting techniques in Mathematica, including the use of PlotStyle
  • Investigate the handling of lists and complex functions in Mathematica
  • Study color management in Mathematica plots, focusing on Hue[] and other color functions
USEFUL FOR

Mathematica users, data visualizers, and anyone working with complex function plots who seeks to enhance their plotting skills and troubleshoot common issues.

rynlee
Messages
44
Reaction score
0
Hi All, running into a bit of a mathematica issue. I put the following code into plot:
Code:
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.
Code:
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
 
Physics news on Phys.org
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 I am /@ correlationList?
 
yep the evaluate[] did it! Thanks!
 
The final function (just to show what it should look like if anyone else has the same problem):
 

Attachments

  • Prob 2Gi.jpg
    Prob 2Gi.jpg
    27.1 KB · Views: 650

Similar threads

  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 1 ·
Replies
1
Views
863
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 18 ·
Replies
18
Views
5K