使用 Matplotlib 绘制直方图,并设置 Y 轴为百分比
要使用 matplotlib 绘制以百分比作为 Y 轴的直方图,可以采取以下步骤:
创建一个数字列表作为 y。
创建一定数量的 bins。
使用 hist() 方法绘制直方图,其中 y、bins 和 edgecolor 作为参数传递。存储补丁以在 Y 轴上设置百分比。
从给定的字母数字中创建颜色列表。
要设置百分比,请迭代补丁(在步骤 3 中获取)。
设置 Y 轴刻度范围。
要显示图形,请使用 show() 方法。
示例
import random
import numpy as np
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
y = [4, 1, 8, 7, 6, 4, 2, 1, 2, 5]
nbins = 10
_, _, patches = plt.hist(y, bins=nbins, edgecolor='white')
colors = ["#" + ''.join([random.choice('0123456789ABCDEF') for j in range(6)])
for i in range(nbins)]
for patch in patches:
patch.set_facecolor(colors[np.random.randint(100) % nbins])
x = patch.get_x() + patch.get_width() / 2
y = patch.get_height() + .05
plt.annotate('{:.1f}%'.format(y), (x, y), ha='center')
plt.ylim(0, 3)
plt.show()输出

广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP