如何从python中的嵌套字典创建堆叠条形图

如何从python中的嵌套字典创建堆叠条形图,python,python-3.x,matplotlib,Python,Python 3.x,Matplotlib,如何从这样的字典中创建堆叠条形图 {'Chesterville': {'Bachelor': 8, 'Diploma': 5, 'Fail (Promoted)': 5, 'HC': 16}, 'Ebony Park': {'Bachelor': 1, 'Diploma': 3, 'Fail (Promoted)': 0, 'HC': 1}, 'Makhaza': {'Bachelor': 15, 'Diploma': 9, 'Fail (Promoted)': 13, 'HC': 4}}

如何从这样的字典中创建堆叠条形图

{'Chesterville': {'Bachelor': 8, 'Diploma': 5, 'Fail (Promoted)': 5, 'HC': 16},
 'Ebony Park': {'Bachelor': 1, 'Diploma': 3, 'Fail (Promoted)': 0, 'HC': 1},
 'Makhaza': {'Bachelor': 15, 'Diploma': 9, 'Fail (Promoted)': 13, 'HC': 4}}

您可以使用pandas将字典转换为数据帧,然后打印它

import pandas as pd
import matplotlib.pyplot as plt

dic = {'Chesterville': {'Bachelor': 8, 'Diploma': 5, 'Fail (Promoted)': 5, 'HC': 16},
     'Ebony Park': {'Bachelor': 1, 'Diploma': 3, 'Fail (Promoted)': 0, 'HC': 1},
     'Makhaza': {'Bachelor': 15, 'Diploma': 9, 'Fail (Promoted)': 13, 'HC': 4}}

df = pd.DataFrame(dic)

df.plot(kind="bar", stacked=True)
plt.show()

您可以使用pandas将字典转换为数据帧,然后进行绘图

import pandas as pd
import matplotlib.pyplot as plt

dic = {'Chesterville': {'Bachelor': 8, 'Diploma': 5, 'Fail (Promoted)': 5, 'HC': 16},
     'Ebony Park': {'Bachelor': 1, 'Diploma': 3, 'Fail (Promoted)': 0, 'HC': 1},
     'Makhaza': {'Bachelor': 15, 'Diploma': 9, 'Fail (Promoted)': 13, 'HC': 4}}

df = pd.DataFrame(dic)

df.plot(kind="bar", stacked=True)
plt.show()