欢迎访问宙启技术站
智能推送

通过Python实现堆叠柱状图,展示各个年龄段的就业人数

发布时间:2023-12-27 19:48:07

要实现堆叠柱状图,展示各个年龄段的就业人数,可以使用Python的数据可视化库matplotlib来实现。下面是一个使用例子,包括导入数据、数据处理和绘制堆叠柱状图的过程。

首先,导入所需要的库:

import matplotlib.pyplot as plt
import numpy as np

然后,定义数据集。假设我们有以下年龄段和对应的就业人数:

age_groups = ['18-24', '25-34', '35-44', '45-54', '55-64', '65+']
employment_data = {
    '2018': [1000, 2000, 3000, 2500, 1500, 500],
    '2019': [1200, 2200, 2800, 2400, 1400, 600],
    '2020': [1100, 2300, 2900, 2200, 1600, 700]
}

接下来,将数据转换为堆叠柱状图所需要的格式:

# 计算每个年龄段的底部位置
bottom = np.zeros(len(age_groups))

# 将数据转换为堆叠柱状图所需要的格式
data = []
for year, employment in employment_data.items():
    data.append(employment)
    
data = np.vstack(data)

最后,使用matplotlib绘制堆叠柱状图:

# 设置图表标题和X轴标签
plt.title('Employment by Age Group')
plt.xlabel('Age Group')

# 绘制堆叠柱状图
colors = ['blue', 'orange', 'green']
for i in range(len(data)):
    plt.bar(age_groups, data[i], bottom=bottom, color=colors[i%len(colors)])
    bottom += data[i]
    
# 设置图例和Y轴标签
plt.legend(employment_data.keys())
plt.ylabel('Employment')

# 展示图表
plt.show()

通过运行以上代码,就可以得到堆叠柱状图,展示各个年龄段的就业人数。每个年龄段的柱子按照就业人数堆叠在一起,不同年份的数据使用不同的颜色来区分,并在图例中显示年份。