我使用此代码来创建和绘制N点:
N=input('No. of Nodes:');
data = rand(N,2) % Randomly generated n no. of nodes
x = data(:,1);
y = data(:,2);
plot(x,y,'*');
如何从k点中选择点(有概率p=0.25)N,然后将这些k点着色为红色并将其他点保留为*.
gno*_*ice 27
您可以采取两种方法.第一个解决方案是随机挑选k的值N值,这将确保你总是有k选择的点.第二种解决方案是与每个具有平均概率随机选择的值p被选择的,这可能导致在少0或多达N被随机选择.
k从N价值中挑选:
您可以使用该功能RANDPERM创建整数的随机排列1通过N,然后选择第一个k值置换后的名单,并重新绘制他们为红:
index = randperm(N);
plot(x(index(1:k)),y(index(1:k)),'r*');
以平均概率选择值p:
您可以使用RAND函数来挑选一个随机值0来1为每个的N值,然后选择那些具有随机值小于或等于你的平均概率p,并重新绘制他们为红:
index = (rand(N,1) <= p);
plot(x(index),y(index),'r*');
| 归档时间: | 
 | 
| 查看次数: | 32453 次 | 
| 最近记录: |