【发布时间】:2014-10-31 20:47:14
【问题描述】:
我想从以下数据框创建一个堆积条形图:
VALUE COUNT RECL_LCC RECL_PI
0 1 15686114 3 1
1 2 27537963 1 1
2 3 23448904 1 2
3 4 1213184 1 3
4 5 14185448 3 2
5 6 13064600 3 3
6 7 27043180 2 2
7 8 11732405 2 1
8 9 14773871 2 3
图中将有 2 个条形图。一个用于 RECL_LCC,另一个用于 RECL_PI。每个栏中将有 3 个部分对应于 RECL_LCC 和 RECL_PI 中的唯一值,即 1、2、3,并将总结每个部分的 COUNT。到目前为止,我有这样的事情:
df = df.convert_objects(convert_numeric=True)
sub_df = df.groupby(['RECL_LCC','RECL_PI'])['COUNT'].sum().unstack()
sub_df.plot(kind='bar',stacked=True)
但是,我得到了这个情节:
知道如何获取 2 列(RECL_LCC 和 RECL_PI)而不是这 3 列吗?
【问题讨论】:
-
你所有的数据类型都是数字的吗?您可以执行
df = df.convert_objects(convert_numeric=True)以确保 dtypes 是 ints/floats -
同意@EdChum。你的代码在我这边检查(我可以很好地绘制它)。
-
谢谢!这是需要的,修改代码以包含 convert_objects 语句。情节仍然需要一些工作。
-
我应该发布答案吗?
-
你的答案是否也包括对情节的修复?