RE: Questions on Plot
- To: mathgroup at smc.vnet.net
- Subject: [mg36754] RE: [mg36752] Questions on Plot
- From: "David Park" <djmp at earthlink.net>
- Date: Mon, 23 Sep 2002 03:32:51 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Steve, You could try something like this: Needs["Graphics`Colors`"] Clear[t]; Do[t[i] = Table[{Random[], Random[]}, {i, 1, 1024}], {i, 4}]; Show[Graphics[ {PointSize[0.005], RoyalBlue, Point /@ t[1], OrangeRed, Point /@ t[2], SpringGreen, Point /@ t[3], CadmiumLemon, Point /@ t[4]}], AspectRatio -> Automatic, Frame -> True, PlotRegion -> {{0.02, 0.96}, {0, 1}}, Background -> IvoryBlack, ImageSize -> 700]; The overall size of the plot can be controlled with the ImageSize option. ListPlot is more a hindrance than a help - throw it in the ash can. Just Map Point onto the lists of point coordinates. Give the color before each set of points. I adjusted the PlotRegion to obtain some black margin on all sides of the frame. David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ From: Steve Gray [mailto:stevebg at adelphia.net] To: mathgroup at smc.vnet.net I would appreciate help with these problems: 1. I'm plotting several thousand points, which I can do either with something like this (this is a test): w = Table[Point[{Random[], Random[]}], {i, 1, 4096}]; x = Table[Point[{Random[], Random[]}], {i, 1, 4096}]; y = Table[Point[{Random[], Random[]}], {i, 1, 4096}]; z = Table[Point[{Random[], Random[]}], {i, 1, 4096}]; dw = Graphics[{PointSize[0.01], RGBColor[ 1, 0, 0], w}]; dx = Graphics[{PointSize[0.01], RGBColor[.8, .8, .8], x}]; dy = Graphics[{PointSize[0.01], RGBColor[ 0, .5, .9], y}]; dz = Graphics[{PointSize[0.01], RGBColor[.8, .8, 0], z}]; Show[dw, dx, dy, dz, AspectRatio -> Automatic, PlotRange -> {{0, 1}, {0, 1}}, Axes -> Automatic, Frame -> True, Background -> GrayLevel[.026], GridLines -> Automatic]; This gives me dots in 4 colors for distinguishing different kinds of points in my real application. This works fine but needs the Point structure. Or, I can do (this is for one kind of point), t = Table[{Random[], Random[]}, {i, 1, 1024}]; ListPlot[t, AspectRatio -> Automatic, Axes -> Automatic, Frame -> True, Background -> GrayLevel[.026] ]; which seems simpler and may fit into the rest of the program more easily. 1. How do I get the RGBColor Rule or the equivalent into the latter? The RGBColor[] call is not a rule. 2. In the latter case I also want to plot 4 types of points. How do I get ListPlot to put down 4 plots superimposed? Or can't I? 3. In either case, I need to make the whole plot area about twice as big. That is, it now occupies about a 4" square. To see details better in my real plot, and because with 16k points the small plot just looks almost like a solid blur, I want to make it more like 8" square, or as big as will fit the screen (without changing the plot range or anything else). There must be a scale factor somewhere. Thank you for any information.