uniformly distributed coordinate points
Show older comments
can anyone help me to generate uniformly distributed coordinate points inside a rectangular field.
Thanking u advance
Answers (5)
Sarah Wait Zaranek
on 10 Mar 2011
You can also do the following if you want a uniform grid:
[X,Y] = meshgrid(linspace(1,1000,100),linspace(1,1000,100));
This will give X coordinates and Y coordinates for each grid point inside a 1000 x 1000 rectangle. The segmenting in terms of x and y are defined by the input vectors, in this case, I am choosing 100 points per side.
scatter(X(:),Y(:))
will show you all the points.
Andreas Goser
on 10 Mar 2011
0 votes
This sounds like a one-liner with RAND or RANDI for me. Do you run into issues with this command or did you just not find it?
Matt Tearle
on 10 Mar 2011
xmin = -3;
xmax = pi;
npts = 42;
x = xmin + (xmax-xmin)*rand(npts,1);
Repeat for y.
4 Comments
Basanta
on 10 Mar 2011
Matt Tearle
on 10 Mar 2011
yes. what i showed generates 42 x-coordinates uniformly distributed between -3 and pi. do the same for y, then scatter(x,y) will show the result.
Oleg Komarov
on 10 Mar 2011
To get all at once:
min = [ 1 1];
max = [10 3];
npts = 1000;
xy = bsxfun(@plus, min, bsxfun(@times, max-min,rand(npts,2)));
f = scatter(xy(:,1),xy(:,2),'.');
xlim([0,11])
ylim([0,4])
Matt Tearle
on 10 Mar 2011
ahahaha. nice :)
sh
on 17 Jun 2013
0 votes
Hi, thanks for your help. can you find the x-coordinate and y-coordinates of these points by coding only? many thanks
Edward Goodison
on 11 Aug 2020
Edited: Edward Goodison
on 11 Aug 2020
[X,Y,Z] = meshgrid(linspace(Start,stop, number of points),linspace(Start,stop, number of points), linspace(Start,stop, number of points));
p = [X(:), Y(:), Z(:)]
2 Comments
Rik
on 11 Aug 2020
Why not use [X(:), Y(:), Z(:)] instead of the loop?
Edward Goodison
on 11 Aug 2020
nice, good improvement, will edit.
Categories
Find more on Inverse Gaussian Distribution in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!