學習記錄 使用Pygal 模擬擲骰子

2021-10-23 11:14:55 字數 1637 閱讀 8104

建立乙個骰子類 die():

from random import randint

class

die:

def__init__

(self, num_sides=6)

:# 一共六面

self.num_sides = num_sides

defroll

(self)

:# 返回1~6 中的隨機一位數字

return randint(

1, self.num_sides)

2.擲骰子

from die import die

die = die(

)results =

for roll_num in

range

(100):

result = die.roll(

)print

(results)

結果如下

[5, 1, 5, 1, 1, 1, 3, 4, 1, 1, 2, 2, 2, 5, 3, 5, 6, 3, 1, 6, 3, 2, 4, 5, 1, 1, 4, 1, 4, 6, 5, 3, 1, 6, 4, 1, 1, 6, 2, 1, 6, 4, 4, 5, 4, 6, 5, 4, 6, 3, 4, 2, 3, 2, 4, 4, 3, 5, 4, 6, 1, 2, 5, 5, 2, 6, 5, 4, 4, 6, 4, 4, 1, 6, 1, 1, 5, 4, 4, 6, 3, 2, 2, 3, 6, 6, 2, 3, 5, 3, 5, 1, 6, 1, 5, 3, 6, 2, 1, 6]

3.分析結果:

計算每個點出現的次數:

frequencies =

for value in

range(1

, die.num_sides+1)

: frequency = results.count(value)

print

(frequencies)

結果:[152, 168, 159, 156, 182, 183]

4.繪製直方圖:

# 直方圖

hist = pygal.bar(

)hist.title =

"results of rolling one d6 1000 times"

hist.x_labels =

['1'

,'2'

,'3'

,'4'

,'5'

,'6'

]hist.x_title =

"result"

hist.y_title =

"frequency of result"

# 在圖表中新增數值

hist.add(

'd6'

,frequencies)

# 渲染成svg檔案 用瀏覽器開啟

Python學習筆記 使用Pygal模擬擲骰子

coding utf 8 created on sat mar 14 21 26 55 2020 author 86159 use to create cells run current cell ctrl enter pygal 生成可縮放的向量圖形檔案 對於需要在不同的螢幕上顯示的圖表,這很有用...

使用Pygal模擬擲骰子

將使用python視覺化包pygal來生成可縮放的向量圖形檔案。對於需要在尺寸 不同的螢幕上顯示的圖表,這很有用,因為它們將自動縮放,以適合 者的螢幕。使用pygal來建立直方圖 from random import randint class die 表示乙個骰子的類 def init self,...

資料視覺化 使用pygal模擬擲骰子

die類模擬擲骰子 同時擲兩個面數不同的骰子,乙個六面,乙個10面,統計兩點數之和的個數繪圖統計 同時擲兩個面數不同的骰子 import pygal 建立乙個d6和乙個d10 die 1 die die 2 die 10 擲骰子多次,並將結果儲存在乙個列表中 results for roll num...