两个骰子投1000次,用直方图显示每个结果的频数。每一次投掷可能的结果有【2,3,4,5,6,7,8,9,10,11,12】
python代码如下
import random
import matplotlib.pyplot as plt
import matplotlib
# 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei'] # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False # 正常显示负号
data=[ random.randint(1,6)+random.randint(1,6) for i in range(1000)]
results=[2,3,4,5,6,7,8,9,10,11,12]
"""
绘制直方图
data:必选参数,绘图数据
bins:直方图的长条形数目,可选项,默认为10
facecolor:长条形的颜色
edgecolor:长条形边框的颜色
alpha:透明度
"""
plt.xticks(results)#设置横坐标刻度值
plt.hist(data, bins=11, facecolor="blue", edgecolor="black", alpha=0.7)
# 显示横轴标签
plt.xlabel("点数")
# 显示纵轴标签
plt.ylabel("频数/频率")
# 显示图标题
plt.title("两枚色子点数和频数分布直方图")
plt.show()
运行结果: