zoukankan      html  css  js  c++  java
  • Python绘制直方图 Pygal模拟掷骰子

    #coding=utf-8
    from random import randint
    
    class Die():
        """骰子类"""
        def __init__(self, num_sides = 6):
            """默认6面"""
            self.num_sides = num_sides
    
        def roll(self):
            """返回一个介于1到骰子面数之间得随机值"""
            return randint(1, self.num_sides)

    模拟同时掷两个6面骰子1000次的结果:

    #coding=utf-8
    import pygal
    from die import Die
    
    # 创建两个6面骰子
    die_1 = Die()
    die_2 = Die()
    
    # 掷骰子多次,并将结果存入列表
    results = []
    for roll_num in range(1000):
        result = die_1.roll() + die_2.roll()
        results.append(result)
    
    # 分析结果
    frequencies = []
    max_result = die_1.num_sides + die_2.num_sides
    for value in range(2, max_result+1):
        frequency = results.count(value)
        frequencies.append(frequency)
    
    # 可视化
    hist = pygal.Bar()
    
    hist.title = "Results of two D6 1000 times."
    hist.x_labels = ['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)
    hist.render_to_file('dice_visual.svg')

  • 相关阅读:
    java语言基础--标识符、关键字
    #考研碎碎念#3
    #考研笔记#计算机之word问题
    #考研#计算机文化知识1(局域网及网络互联)
    #学习笔记#jsp
    #学习笔记#JSP数据交互
    考研随笔2
    考研随笔1
    几个人
    全局变量
  • 原文地址:https://www.cnblogs.com/zhangtianyuan/p/8760608.html
Copyright © 2011-2022 走看看