如何解决在一个区域里坐标随机分布的问题?
比如这样一个区域横向坐标-100到100,纵向坐标-100到100
在有一个length为100的数组,每个数组项为{x:'坐标',y:'坐标'},
如何让这一百的点随机分布(像一个圆那样展开,密集程度较均匀,不要,一些区域太密集了,一些区域太分散了),且还有不重叠(均匀分布)?
那位大佬给个演示
大概这样的分布
这里有python的写法
那位大大可以把这个改成js的吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
没明白你说的“均匀分布”是什么意思,如果是每个点的横纵坐标不相同,那么可以这么做。
已知 -100~100 共 201 个数字,那么可以弄两个数组分别表示 X、Y 轴坐标,随机打乱顺序,每次取一组即可:
执行结果:
针对问题修改后的补充:
什么叫 “像一个圆那样展开”?你把结果图画出来。
另外如果真是一个圆形分布,那也不可能是随机的啊?
针对第二次问题修改后的补充:
你给的 Python 代码里坐标点可以是小数的,我不知道你是可以接受小数还是只能是整数。我给了个只能是要整数的例子,如果要小数你就自己把
parseInt
删掉。绘制效果在最下面,因为 100*100 比较小,所以我做了放大 2.5 倍的处理。