1、柱状图实例
import pygal hist = pygal.Bar()
2、柱状图横坐标、纵坐标的值
hist.x_labels = [] for value in range(2, die1.num_sides + die2.num_sides + 1): hist.x_labels.append(value) hist.add(‘D6‘, frequencies)
3、柱状图标题,X轴、Y轴标题
hist.title = ‘Result of rolling one D6 1000 times‘ hist.x_title = ‘Result‘ hist.y_title = ‘Frequencies of Result‘
4、把图表渲染成svg文件
hist.render_to_file(‘die_visual.svg‘)
5、最后附上代码
die.py
1 from random import randint 2 3 4 class Die: 5 def __init__(self, num_sides=6): 6 self.num_sides = num_sides 7 8 def roll(self): 9 return randint(1, self.num_sides)
die_visual.py
1 import pygal 2 from die import Die 3 4 die1 = Die() 5 die2 = Die(10) 6 7 8 results = [] 9 for roll_num in range(1000): 10 results.append(die1.roll() + die2.roll()) 11 12 frequencies = [] 13 14 for value in range(2, die1.num_sides + die2.num_sides + 1): 15 frequency = results.count(value) 16 frequencies.append(frequency) 17 18 hist = pygal.Bar() 19 20 hist.title = ‘Result of rolling one D6 1000 times‘ 21 hist.x_title = ‘Result‘ 22 hist.x_labels = [] 23 for value in range(2, die1.num_sides + die2.num_sides + 1): 24 hist.x_labels.append(value) 25 hist.y_title = ‘Frequencies of Result‘ 26 hist.add(‘D6‘, frequencies) 27 28 hist.render_to_file(‘die_visual.svg‘)
6、一个6面色子和10面色子投掷1000次的数据统计
原文:https://www.cnblogs.com/adamhome/p/12258492.html