我在matlab中生成了一个4 x 4区域的数字。现在我需要在这个区域随机放置超过200个点(实际移动设备),但均匀分布在4 x 4区域。我使用以下行来随机生成x和y坐标,以选择每个不同点的位置。
a =200;
x_base = randi([1 5], 1, a);
b = rand([10 8], 1);
y_base = randi([3 7],1, a);
使用上面的代码我只能获得x和y的整数坐标。因此,我无法在整个区域均匀分布点数。这是因为我使用的randi函数只生成整数。我想知道有没有办法随机生成浮点数,以便我可以更均匀地分配点数?
我正在寻找1到20之间的随机浮点数。
答案 0 :(得分:5)
rand
生成介于0和1之间的数字。
rand(m,n)
生成一个m-by-n数组。
答案 1 :(得分:2)
minVal = 1;
maxVal = 20;
r = rand(1) * (maxVal - minVal) + minVal
答案 2 :(得分:2)
您想要从(0,0)到(4,4)的4x4区域中选择n
个随机点吗?
unifinv(rand(n, 2), 0, 4)