1 Star 0 Fork 0

tony_cao/DataVisualization

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
draw_roll_two_6_side_dice_histogram.py 1.26 KB
一键复制 编辑 原始数据 按行查看 历史
# 主题:绘制同时掷两个6面骰子的直方图
from dice import Dice
from plotly.graph_objs import Bar, Layout
from plotly import offline
import plotly.express as px
# 第一步:记录每次掷骰子的结果
dice_instance_1 = Dice()
dice_instance_2 = Dice()
roll_dice_times = 100
roll_dice_result = []
dice_frequency = []
# 同时投掷两个6面的骰子100次
for i in range(roll_dice_times):
result = dice_instance_1.roll() + dice_instance_2.roll()
roll_dice_result.append(result)
# 统计2-12点出现的次数
max_points = dice_instance_1.side + dice_instance_2.side
for points in range(2, max_points + 1):
frequency = roll_dice_result.count(points)
dice_frequency.append(frequency)
# 第二步:将掷骰子的所有结果用直方图表示
## 第一种实现方式
x_values = list(range(2, max_points + 1))
data = [Bar(x=x_values, y=dice_frequency)]
x_axis_config = {'title': "面数"}
y_axis_config = {'title': "面数出现的次数"}
layoutObj = Layout(title="同时掷两个6面骰子100次的结果分布情况",
xaxis = x_axis_config, yaxis = y_axis_config)
figure = {'data': data, 'layout': layoutObj}
offline.plot(figure, filename='two_6_side_dice.html')
## 第二种实现方式
fig = px.bar(x=x_values, y=dice_frequency)
fig.show()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/tony_cao/data-visualization.git
git@gitee.com:tony_cao/data-visualization.git
tony_cao
data-visualization
DataVisualization
master

搜索帮助