简单随机漫步

小灰灰 2022-06-03 10:53 217阅读 0赞
  1. 最近在看用Python进行数据分析这本书,里面提到了随机漫步,所以试了试。
  2. 今天把代码放这里,以后随时可以看看。

##################一条随机漫步线###############################

  1. import random
  2. import numpy as np
  3. position=0
  4. walk=[position]
  5. steps=1000
  6. for i in np.arange(steps):
  7. step=1 if random.randint(0,1) else -1
  8. position+=step
  9. walk.append(position)
  10. import matplotlib.pyplot as plt
  11. plt.scatter(list(np.arange(steps)), walk[0:1000],cmap=plt.cm.Reds, edgecolors='none', s=5)
  12. plt.scatter(0, 0, c='green', edgecolors='none', s=100)
  13. plt.scatter(list(np.arange(steps))[-1],walk[-1], c='red', edgecolors='none', s=100)
  14. plt.title(u"我们家王震小可爱学走路",fontproperties='SimHei',fontsize=20)
  15. plt.xlabel(u"步数",fontproperties='SimHei',fontsize=20)
  16. plt.ylabel(u"距离",fontproperties='SimHei',fontsize=20)
  17. plt.show()

Center

########################同时进行5000个随机漫步,选择5条进行绘图###############################

  1. import numpy as np
  2. from numpy import random
  3. nwalks=5000
  4. nsteps=1000
  5. draws=np.random.randint(0,2,size=(nwalks,nsteps))
  6. steps=np.where(draws>0,1,-1)
  7. walks=steps.cumsum(1)
  8. walks=walks[0:5]
  9. import pylab as pl
  10. linestyle=['cx--','mo:','kp-','bs--','kp-']#红,绿,黄,蓝,粉,每个折线给不同的颜色
  11. x=[i for i in np.arange(0,len(walks[0]))]#横坐标
  12. linenum=len(walks)
  13. plotlist=[]
  14. for i in np.arange(0,linenum):
  15. plot1,=pl.plot(x,walks[i],linestyle[i])#画出对应折线图
  16. plotlist.append(plot1)
  17. plt.title(u"小可爱学走路",fontproperties='SimHei',fontsize=20)
  18. plt.xlabel(u"步数",fontproperties='SimHei',fontsize=20)
  19. plt.ylabel(u"距离",fontproperties='SimHei',fontsize=20)
  20. pl.show()

Center 1

发表评论

表情:
评论列表 (有 0 条评论,217人围观)

还没有评论,来说两句吧...

相关阅读

    相关 漫步云中网络

     阅读本文前,最好能先了解以下的知识: [了解 OpenStack][OpenStack] 将有助于对本文的理解。本文讲解的是 Linux 虚拟网络中的一般原理方

    相关 简单随机漫步

         最近在看用Python进行数据分析这本书,里面提到了随机漫步,所以试了试。      今天把代码放这里,以后随时可以看看。 \\\\\\\\\\\\\\\\\\一