首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在同一面积图中绘制两个数据帧,并用深色和浅色区分它们?

如何在同一面积图中绘制两个数据帧,并用深色和浅色区分它们?
EN

Stack Overflow用户
提问于 2018-11-04 09:45:52
回答 1查看 40关注 0票数 0

我有两个数据帧,假设第一个对应于运行中的发电厂,第二个对应于管道发电厂。我想把这两个都画在同一个面积图上。它们应该由深色和浅色来区分,如下图所示。我尝试在每个数据帧中插入一列,并将其设置为索引(除了Country和fuel之外)。我既不能将新列设置为索引,也不能在同一图中绘制数据帧。我真的很感谢一些想法来执行这一点。

代码语言:javascript
运行
复制
df1
              2010  2020  2030  2040  2050  
Country  Fuel
A        Gas   100   110   120   130   140
         Coal  100   110   120   130   140 
df2
              2010  2020  2030  2040  2050  
Country  Fuel
A        Gas   100   110   120   130   140
         Coal  100   110   120   130   140 

EN

回答 1

Stack Overflow用户

发布于 2018-11-04 10:11:04

我发现层次索引会妨碍某些任务(比如下面的任务),而且最好在平面数据帧上执行所有操作。在下面的步骤中,我使用reset_index将索引级别转换为普通列,然后使用set_index将它们放回原处,为绘图步骤做准备。

代码语言:javascript
运行
复制
# reset the indexes, and add a new column to both dataframes
df1.reset_index(inplace=True)
df1['Plant Type'] = 'Operational'

df2.reset_index(inplace=True)
df2['Plant Type'] = 'Pipeline'

# concatenate the two dataframes
df_combined = pd.concat([df1, df2])

# set the index back to how it was, but also include the new column, and then plot
df_combined.set_index(['Plant Type', 'Country', 'Fuel']).plot.area()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53137060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档