以下是我的数据集的样子:
Levels Role Status
ABC SE Open
XYZ SSE Closed
KYZ LA Closed
此处我的要求是获取每个'级别'的计数以及每个'角色',其中状态为'已关闭'。
我使用下面的代码来获取所需的结果。
df[df['Status'] == 'Closed'].groupby(['Levels','Role']).size()
现在我想绘制这些结果。我如何绘制这些结果。它需要成为一个自我解释。什么样的情节最适合我的要求。
我是可视化部分的新手。
由于
答案 0 :(得分:1)
如果您不知道如何将结果可视化,那么其他人应该如何知道。但是某种通用方法可以创建一个数据透视表,可以使用其中一个类别作为列,另一个作为索引,然后绘制条形图。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
levels=["ABC", "XYZ", "KYZ", "KYZ"]
roles = ["SE", "SSE", "LA", "SSE"]
status = ["Open", "Closed", "Closed", "Closed"]
df=pd.DataFrame({"Levels" : levels, "Role":roles, "Status":status})
df2 = df[df['Status'] == 'Closed'].groupby(['Levels','Role']).size().reset_index(name='Count')
df3 = pd.pivot_table(df2, values='Count', columns=['Levels'], index = "Role",
aggfunc=np.sum, fill_value=0)
df3.plot(kind="bar")
plt.show()