代码拉取完成,页面将自动刷新
# 主题:绘制同时掷两个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()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。