资讯专栏INFORMATION COLUMN

python大数据可视化pygal仿真模拟摇筛子完成实例

89542767 / 424人阅读

  本文关键为大家分享了python大数据可视化pygal仿真模拟摇筛子完成实例,感兴趣的小伙伴可以参考借鉴一下,希望可以有一定的帮助,祝愿大家多多的不断进步,尽早涨薪


  数据可视化包Pygal形成可放大矢量图格式文档


  还可以在规格不同类型的屏上全自动放大,表明数据图表


  #安装pygal
  pip install pygal
  '''
  想要了解Pygal可生成什么样的图表,可访问http://www.pygal.org/
  单击document,点击chart types,每个示例都包含源代码
  '''
  from random import randint
  #创建一个骰子的类
  class Die():
  def __init__(self,num_sides=6):
  self.num_sides=num_sides
  def roll(self):
  #返回一个位于1和骰子面数之间的随机值
  return randint(1,self.num_sides)
  #掷骰子
  die=Die()
  #创建一个列表,将结果存储在一个列表中
  results=[]
  #投100次
  for roll_num in range(100):
  result=die.roll()
  results.append(result)
  print(results)
  [3,4,2,2,6,5,5,5,2,3,1,4,3,2,1,2,3,6,6,5,5,3,2,3,1,1,4,1,4,6,1,6,2,3,4,6,2,5,5,1,6,1,5,4,3,3,4,5,6,3,5,1,4,3,5,6,6,6,4,6,5,6,5,4,6,3,1,4,1,4,2,1,1,4,4,4,2,3,1,4,6,2,1,5,6,2,2,6,6,3,6,2,6,6,4,4,2,1,1,6]


  分析结果,计算每个点数出现的次数


  frequencies=[]
  for value in range(1,die.num_sides+1):
  frequency=results.count(value)
  frequencies.append(frequency)
  print(frequencies)
  [10,23,13,9,26,19]


  绘制直方图


  import pygal
  hist=pygal.Bar()
  hist.title='results of rolling one d6 100 times'
  hist.x_lables=['1','2','3','4','5','6']
  hist.x_title='result'
  hist.y_title='frequency of result'
  hist.add('d6',frequencies)
  #将图渲染为SVG文件,需要打开浏览器,才能查看生成的直方图
  hist.render_to_file('die_visual.svg')

01.png

  同时投掷两个骰子

  from random import randint
  #创建一个骰子的类
  class Die():
  def __init__(self,num_sides=6):
  self.num_sides=num_sides
  def roll(self):
  #返回一个位于1和骰子面数之间的随机值
  return randint(1,self.num_sides)
  #掷骰子
  die1=Die()
  die2=Die()
  #创建一个列表,将结果存储在一个列表中
  results=[]
  #投100次
  for roll_num in range(100):
  result=die1.roll()+die2.roll()
  results.append(result)
  print(results)
  #分析结果,计算每个点数出现的次数
  frequencies=[]
  max_result=die1.num_sides+die2.num_sides
  for value in range(1,max_result+1):
  frequency=results.count(value)
  frequencies.append(frequency)
  print(frequencies)
  #绘制直方图
  import pygal
  hist=pygal.Bar()
  hist.title='results of rolling one d6 dice 100 times'
  hist.x_lables=['2','3','4','5','6','7','8','9','10','11','12']
  hist.x_title='result'
  hist.y_title='frequency of result'
  hist.add('d6+d6',frequencies)
  #将图渲染为SVG文件,需要打开浏览器,才能查看生成的直方图
  hist.render_to_file('die_visual.svg')
  [4,7,4,5,8,4,3,6,8,9,8,11,9,11,8,8,5,6,10,5,11,7,4,3,12,12,7,2,4,9,9,5,7,10,4,7,4,6,5,6,7,2,7,9,7,6,11,5,9,6,11,4,8,10,7,9,5,4,3,7,4,10,5,7,2,6,4,2,2,5,5,9,6,3,6,10,12,7,4,11,8,6,10,5,7,5,5,7,9,4,11,6,7,8,6,11,6,4,3,12]
  [0,5,5,14,13,13,15,8,9,6,8,4]

  

02.png

       同时投掷两个面数不同骰子


  from random import randint
  #创建一个骰子的类
  class Die():
  def __init__(self,num_sides=6):
  self.num_sides=num_sides
  def roll(self):
  #返回一个位于1和骰子面数之间的随机值
  return randint(1,self.num_sides)
  #掷骰子
  die1=Die()
  die2=Die(10)
  #创建一个列表,将结果存储在一个列表中
  results=[]
  #投100次
  for roll_num in range(100):
  result=die1.roll()+die2.roll()
  results.append(result)
  print(results)
  #分析结果,计算每个点数出现的次数
  frequencies=[]
  max_result=die1.num_sides+die2.num_sides
  for value in range(1,max_result+1):
  frequency=results.count(value)
  frequencies.append(frequency)
  print(frequencies)

03.png

  #绘制直方图


  import pygal
  hist=pygal.Bar()
  hist.title='results of rolling one d10 dice 100 times'
  hist.x_lables=['2','3','4','5','6','7','8','9','10','11','12','13','14','15','16']
  hist.x_title='result'
  hist.y_title='frequency of result'
  hist.add('d6+d10',frequencies)
  #将图渲染为SVG文件,需要打开浏览器,才能查看生成的直方图
  hist.render_to_file('die_visual.svg')
  [5,3,6,13,8,9,10,11,11,4,5,14,11,10,11,8,14,12,16,8,9,11,7,11,9,2,8,9,9,10,7,8,12,11,8,12,9,9,10,11,8,14,10,12,10,7,12,5,4,8,6,7,7,11,9,16,6,13,6,10,6,7,16,9,14,5,7,12,8,9,11,11,6,11,5,8,11,16,4,10,5,10,13,4,9,9,11,9,11,13,7,13,13,5,5,4,5,3,12,14]
  [0,1,2,5,9,6,8,10,13,9,15,7,6,5,0,4]

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129084.html

相关文章

  • 这里有8个流行的Python视化工具包,你喜欢哪个?

    摘要:下面,作者介绍了八种在中实现的可视化工具包,其中有些包还能用在其它语言中。当提到这些可视化工具时,我想到三个词探索数据分析。还可以选择样式,它模拟了像和等很流行的美化工具。有很多数据可视化的包,但没法说哪个是最好的。 showImg(https://segmentfault.com/img/remote/1460000019029121); 作者:Aaron Frederick 喜欢用...

    testbird 评论0 收藏0
  • python数据视化制作全球人口地形图

      本文主要是给大家介绍了python大数据可视化制作全球人口地形图的实例详细说明,感兴趣的小伙伴可以参考借鉴一下,希望可以有一定的帮助,祝愿大家尽可能发展,尽早涨薪  序言  信息来源:population_data.json,  先看看数据信息长什么样  [   {   "CountryName":"ArabWorld",   "Country...

    89542767 评论0 收藏0
  • 8个流行的Python视化工具包,你更钟意哪一个?

    摘要:最终证明,及其相关工具的效率很高,但就演示而言它们并不是最好的工具。我按编号用颜色编码了每个节点,代码如下用于可视化上面提到的稀疏图形的代码如下这个图形非常稀疏,通过最大化每个集群的间隔展现了这种稀疏化。 showImg(http://upload-images.jianshu.io/upload_images/13825820-3a550fd2e61e1674.jpg?imageMo...

    iliyaku 评论0 收藏0
  • Python学习之路14-生成数据

    摘要:小结本篇主要讲述了如何生成数据集以及如何对其进行可视化如何使用创建简单的图表如果使用散点图来探索随机漫步过程如何使用创建直方图,以及如何使用直方图来探索同时掷两个面数不同的骰子的结果。 《Python编程:从入门到实践》笔记。从本篇起将用三篇的篇幅介绍如何用Python进行数据可视化。 1. 前言 从本篇开始,我们将用三篇的篇幅来初步介绍如何使用Python来进行数据可视化操作。本篇的...

    wanglu1209 评论0 收藏0
  • Python学习之路15-下载数据

    摘要:本节中将绘制幅图像收盘折线图,收盘价对数变换,收盘价月日均值,收盘价周日均值,收盘价星期均值。对数变换是常用的处理方法之一。 《Python编程:从入门到实践》笔记。本篇是Python数据处理的第二篇,本篇将使用网上下载的数据,对这些数据进行可视化。 1. 前言 本篇将访问并可视化以两种常见格式存储的数据:CSV和JSON: 使用Python的csv模块来处理以CSV(逗号分隔的值)...

    张春雷 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<