- 绘制直方图
绘制一个直方图分析掷骰子结果
先创建一个骰子类,然后创建一个实例,得出掷骰子1000次的结果
from random import randint
import pygal
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=[]
for roll_num in range(1000):
result=die.roll()
results.append(result)
#分析结果
frequencies=[]
for value in range(1,die.num_sides+1):
frequency=results.count(value)
frequencies.append(frequency)
然后用一个条形图可视化显示数据
#创建条形图实例
hist=pygal.Bar()
#设置标题
hist.title='Results of rolling one D6 1000 times'
#x轴标签
hist.x_labels=['1','2','3','4','5','6']
hist.x_title='Result'
hist.y_title='Frequency of Result'
hist.add('D6',frequencies)