Re: listplot and legend (again)
- To: mathgroup at smc.vnet.net
- Subject: [mg80402] Re: listplot and legend (again)
- From: thomas <thomas.muench at gmail.com>
- Date: Tue, 21 Aug 2007 05:06:49 -0400 (EDT)
- References: <f9s462$amn$1@smc.vnet.net>
On Aug 14, 1:37 pm, Arkadiusz.Ma... at gmail.com wrote: > Hi, > > I know that there has been at least one post on this topic but I still > can't drawlegendinside ListPlot. > > When i plot several curves, colors for them are chosen automaticaly > by Mathematica. How can I plot alegendfor them? > > May I ask for an example, please? Why quite good solution existed in > MultipleListPlot in Mathv5.2 just vanished???? > > Arek Hello, Arek, When Mathematica 6 assigns plotcolors automatically in ListPlot (or ListLinePlot) it uses the colors defined in ColorData[1]. Therefore, the first set of data will be plotted in color ColorData[1,1], the second in colorData[1,2] and so on. (I don't think that that is mentioned anywhere in the Help system) Once you know this, it is quite straigtforeward to make a legend, even without the use of the PlotLegend package. Here are two examples. Example 1 prints the legend as part of the image (as Epilog), Ex. 2 prints it as separate element data = Table[RandomReal[], {4}, {5}]; legend = Framed@ Column[Table[ Style["data " <> ToString[i],ColorData[1, i], Bold, "Graphics", 15], {i, Length[data]}]]; (* Example 1 *) ListLinePlot[data, Epilog -> Inset[legend, {.5, .5}], ImageSize -> 300] (* Example 2 *) Row[{ListLinePlot[data, ImageSize -> 300], legend}] Hope that helps, Thomas