分位数是指将一组数据按照大小顺序分成若干等份,求出每份的值。Python中可以利用matplotlib库来绘制数据的分位数图。
import numpy as np
import matplotlib.pyplot as plt
data = np.random.normal(size=1000) # 随机生成1000个服从正态分布的数据
fig, ax = plt.subplots()
quantiles = np.arange(0, 1.1, 0.1) # 计算出10个分位数
# 在图上绘制分位数
ax.plot(quantiles, np.quantile(data, quantiles), 'o', color='black')
ax.plot([0, 1], [np.min(data), np.max(data)], '--', color='gray', linewidth=1)
ax.set_title('分位数图')
ax.set_xlabel('分位数')
ax.set_ylabel('数据')
plt.show()
首先导入numpy和matplotlib库,生成1000个服从正态分布的数据。利用`np.arange`函数计算出分位数所在位置,并在图上绘制出分位数和数据的关系。使用`ax.plot`函数绘制出数据点和分位数线,并使用`ax.set_title`、`ax.set_xlabel`、`ax.set_ylabel`函数设置图表的标题、X轴名称和Y轴名称。最后调用`plt.show()`函数展示图表。