如何在plt.hist()直方图中添加数据标签

import matplotlib.pyplot as plt
import random

v_max = 500
v_min = 0
myList = [random.randint(v_min, v_max) for i in range(1000)]  # 生成样本集
interval = 50
bs = list(range(v_min, v_max + interval, interval ))  # 分组区间
plt.figure()
n, bins, patches = plt.hist(myList, bs, density=False)  # 各bin的频数,分组取值范围,每个bin中包含的数据list
plt.xlabel('number')
plt.xlim(v_min, v_max)
plt.ylabel('frequency')
plt.title('Histogram')
total = sum(n)  # bins的频数之和
freq = list(map(lambda x: x/total, n))  # 计算各bin频率
for i in range(len(n)):
    plt.text(bins[i] + (bins[1] - bins[0]) / 2, n[i] * 1.01, '%.2f' %freq[i], ha='center', va='bottom')  # 柱上添加数据数据标签
plt.show()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值