python数据可视化技巧的100个练习 -- 13. 随机数据的密度图
你的经理希望可视化最近一次调查中客户年龄的分布,以更好地了解年龄人口统计信息。为了练习,请生成一个客户年龄的随机数据集,并创建一个密度图来可视化分布。【数据生成代码示例】
import numpy as npnp.random.seed(0)ages = np.random.normal(35, 10, 1000)
【图表答案】
【代码答案】
import numpy as npimport matplotlib.pyplot as pltimport seaborn as snsnp.random.seed(0)ages = np.random.normal(35, 10, 1000)plt.figure(figsize=(10, 6))sns.kdeplot(ages, fill=True)plt.title('客户年龄的密度图')plt.xlabel('年龄')plt.ylabel('密度')plt.grid(True)plt.show()
首先,我们导入必要的库:用于数据生成的 numpy,以及用于绘图的 matplotlib 和 seaborn。我们使用 np.random.seed(0) 设置随机种子,以确保随机数据的可重复性。接下来,我们使用 np.random.normal(35, 10, 1000) 生成 1000 个符合正态分布的随机年龄,均值为 35,标准差为 10。我们使用 seaborn 的 kdeplot 函数创建密度图,并将 shade 参数设置为 True 以填充曲线下的区域。然后,我们分别使用 plt.title、plt.xlabel 和 plt.ylabel 设置图表的标题、x 轴标签和 y 轴标签。最后,我们使用 plt.grid(True) 启用网格以提高可读性,并使用 plt.show() 显示图表。【小知识】
- 它提供直方图的平滑版本,有助于理解底层分布,而不会受到直方图分箱效果的影响。
- Seaborn 基于 Matplotlib 构建,提供了一个高级接口,用于绘制吸引人的统计图形。