python Matplotlib条形图组织

fjnneemd  于 2022-12-17  发布在  Python
关注(0)|答案(1)|浏览(138)

我有一个关于2020年员工工资的CSV文件,我不知道如何组织我的条形图。这里是CSV供参考:https://catalog.data.gov/dataset/employee-salaries-2020
我想用条形图表示每个部门的平均工资。
我已经开始按部门及其value_count()组织条形图,但我希望x轴代表该部门的平均工资。有什么建议可以帮助我实现这一点吗?

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

file_path = 'Employee_Salaries_-_2020.csv'
salaries = pd.read_csv(file_path)

a = salaries.Department.value_counts()
x = list(a.index)
y = list(a)

f, ax = plt.subplots(figsize=(20,10))
width = 0.75 # the width of the bars 
ind = np.arange(len(y))  # the x locations for the groups
ax.barh(ind, y, width, color="blue")
ax.set_yticks(ind+width/2)
ax.set_yticklabels(x, minor=False)
for i, v in enumerate(y):
    ax.text(v + .25, i + .25, str(v), color='blue', fontweight='bold') #add value labels into bar
plt.title('Average Base Pay by Department')
plt.xlabel('Average Base Pay')
plt.ylabel('Department')
plt.show()

rsaldnfx

rsaldnfx1#

你可以通过salaries.groupby('Department')['Base Salary'].mean()得到平均工资,而不是值计数,这应该是你要找的值。

相关问题