Re: Help coloring plot
- To: mathgroup@smc.vnet.net
- Subject: [mg11341] Re: Help coloring plot
- From: Allan Hayes <hay@haystack.demon.co.uk>
- Date: Fri, 6 Mar 1998 00:41:00 -0500
- References: <6dg8vb$305@smc.vnet.net>
Paul Bublitz wrote: > > I have a class assignment (hi Ken) to create a graph consisting of data > from a table plotted blue, a single point plotted in red, and lines > connecting the single point to the table plotted in greenish yellow. > I can plot each (point, table, and line) separately in the specified > colors. When I combine the individual plots into a module as shown > below, I only get a single color. How can I plot this in three > colors? > > plotpoly[sides_,point_]:= > Module[{p1,p2,p3,data}, > data=Table[{Cos[I 2.\[Pi]/sides],Sin[I 2.\[Pi]/sides]},{I,sides}]; > > p1=ListPlot[data,PlotStyle->PointSize[.03],DefaultColor- > >RGBColor[0,0,1],DisplayFunction->Identity]; > > p2=Graphics[{PointSize[.03],Point[point]},DefaultColor- > >RGBColor[1,0,0]]; > > p3=Graphics[Table[Line[{point,data[[I]]}],{I,sides}],DefaultColor- > >RGBColor[.8,1,0]; > > Show[{p1,p2,p3},Axes->False,AspectRatio->Automatic, > DisplayFunction->$DisplayFunction] > > ------------- > Paul Bublitz > tpa@radix.net Paul, 1) you need to put the color directive in a list in with the objects to be colored, and preceding them. 2) there don't seem to be any lines in your code 3) it would be better not to use list plot. For example plotpoly[sides_,point_]:= Module[{p1,p2,p3,data}, data=Table[{Cos[i 2.\[Pi]/sides],Sin[i 2.\[Pi]/sides]},{i,sides}]; p3=Graphics[{RGBColor[.8,1,0],Line[{point,#}]&/@data}]; p1=Graphics[{PointSize[.03],RGBColor[0,0,1],Point[#]&/@data}]; p2=Graphics[{PointSize[.03],RGBColor[1,0,0],Point[point]}]; Show[{p3,p1,p2},AspectRatio->Automatic] ] Note that the lines must be come first if they are to be behind the points. -- Allan Hayes Training and Consulting Leicester, UK hay@haystack.demon.co.uk http://www.haystack.demon.co.uk voice: +44 (0)116 271 4198 fax: +44 (0)116 271 8642