Project1
标题:
为什么用如下代码做不出幂律分布的效果?
[打印本页]
作者:
黑白界
时间:
2015-4-2 22:58
标题:
为什么用如下代码做不出幂律分布的效果?
本帖最后由 黑白界 于 2015-4-4 22:49 编辑
lia=[]
lib=[]
for i in 0..300
a=rand(100)
lia[i]=a
b=3*a-100
lib[i]=b
end #以上做了两个数列,规模为300,随机取样分布应该符合y=3x-100
for i in 0..300
x=lia[rand(300)]
y=lib[rand(300)]
yy=360-y #因为我的显示窗口是360*360的,并且游戏里y坐标方向原本是向下的
if yy<0 #防止溢出
yy=1
end
self.contents.fill_rect(x,yy,1,1,Color.new(255,255,255)) #画曲线
end
end
复制代码
以上代码放到窗口的refresh里,出来的效果是散乱无序的分布
QQ截图20150402230929.png
(47.93 KB, 下载次数: 25)
下载附件
保存到相册
2015-4-2 23:07 上传
以下摘自百科,也是我做这个的初衷:
“Zipf定律与Pareto定律都是简单的幂函数,我们称之为幂律分布;
还有其他形式的幂律分布,像名次- 规模分布、规模- 概率分布,
这四种形式在数学上是等价的,其通式可写成y = cx - r ,
其中x, y是正的随机变量,c, r均为大于零的常数.
这种分布的共性是绝大多数事件的规模很小,而只有少数事件的规模相当大. ”
PS:我数学不太好,以上摘的大部分都看不懂,请大神指点
………………………………………………………………………………………………………………………………………………………………………………………………………………
坑爹的百度,是y=cx^(-r),我还以为是什么高深的数学原理呢
作者:
路路
时间:
2015-4-3 05:10
提示:
作者被禁止或删除 内容自动屏蔽
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1