如何使用 python 中数据框中的 groupby 数据绘制堆积条形图?
How to plot a stacked bar using the groupby data from the dataframe in python?
我正在使用 pandas 模块读取巨大的 csv 文件。
filename = pd.read_csv(filepath)
转换为数据帧,
df = pd.DataFrame(filename, index=None)
从csv文件中,我关注的是name country, year, value这三列。
我对国家名称进行了分组,并将其值相加,如下面的代码所示,并将其绘制为条形图。
df.groupby('country').value.sum().plot(kind='bar')
其中,x 轴是国家/地区,y 轴是价值。
现在,我想将此条形图制作成堆积条形图,并使用第三列年份,不同颜色的条形图代表每年。期待一个简单的方法。
请注意,年份列包含从 2000 年到 2019 年的年份。
谢谢
据我了解,您应该尝试类似的方法:
df.groupby(['country', 'Year']).value.sum().unstack().plot(kind='bar', stacked=True)
我正在使用 pandas 模块读取巨大的 csv 文件。
filename = pd.read_csv(filepath)
转换为数据帧,
df = pd.DataFrame(filename, index=None)
从csv文件中,我关注的是name country, year, value这三列。 我对国家名称进行了分组,并将其值相加,如下面的代码所示,并将其绘制为条形图。
df.groupby('country').value.sum().plot(kind='bar')
其中,x 轴是国家/地区,y 轴是价值。
现在,我想将此条形图制作成堆积条形图,并使用第三列年份,不同颜色的条形图代表每年。期待一个简单的方法。 请注意,年份列包含从 2000 年到 2019 年的年份。 谢谢
据我了解,您应该尝试类似的方法:
df.groupby(['country', 'Year']).value.sum().unstack().plot(kind='bar', stacked=True)