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.