设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1387|回复: 1
打印 上一主题 下一主题

[已经解决] 为什么用如下代码做不出幂律分布的效果?

[复制链接]

Lv2.观梦者

梦石
0
星屑
701
在线时间
511 小时
注册时间
2012-4-8
帖子
255
跳转到指定楼层
1
发表于 2015-4-2 22:58:47 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 黑白界 于 2015-4-4 22:49 编辑
  1.      
  2.     lia=[]
  3.     lib=[]
  4.     for i in 0..300
  5.       a=rand(100)
  6.       lia[i]=a
  7.       b=3*a-100
  8.       lib[i]=b
  9.     end      #以上做了两个数列,规模为300,随机取样分布应该符合y=3x-100
  10.     for i in 0..300
  11.       x=lia[rand(300)]
  12.       y=lib[rand(300)]
  13.       yy=360-y      #因为我的显示窗口是360*360的,并且游戏里y坐标方向原本是向下的
  14.       if yy<0      #防止溢出
  15.         yy=1
  16.       end
  17.       self.contents.fill_rect(x,yy,1,1,Color.new(255,255,255))      #画曲线
  18.     end
  19.   end
复制代码
以上代码放到窗口的refresh里,出来的效果是散乱无序的分布


以下摘自百科,也是我做这个的初衷:
“Zipf定律与Pareto定律都是简单的幂函数,我们称之为幂律分布;
还有其他形式的幂律分布,像名次- 规模分布、规模- 概率分布,
这四种形式在数学上是等价的,其通式可写成y = cx - r ,
其中x, y是正的随机变量,c, r均为大于零的常数.
这种分布的共性是绝大多数事件的规模很小,而只有少数事件的规模相当大. ”

PS:我数学不太好,以上摘的大部分都看不懂,请大神指点
………………………………………………………………………………………………………………………………………………………………………………………………………………
坑爹的百度,是y=cx^(-r),我还以为是什么高深的数学原理呢
武侠|养成|战棋游戏《以武证道》头秃开发中...
开发日记在此
路路 该用户已被删除
2
发表于 2015-4-3 05:10:03 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-12 23:59

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表