geom_area 具有分布在多列中的分组变量

Posted

技术标签:

【中文标题】geom_area 具有分布在多列中的分组变量【英文标题】:geom_area with a grouping variable spread across multiple columns 【发布时间】:2021-11-20 00:31:08 【问题描述】:

基本上我的数据看起来像这样,

Year, group1, group2, group3
1999, 500,    1200,   1700
2000, 700,    3000,   2000
2001, 500,    4500,   2500

我想要一个堆叠的geom_area 图表。如果可能,不使用dplyr之外的库

所需输出的示例:

【问题讨论】:

到目前为止您尝试过什么?请显示您所需输出的示例 @GuedesBF i.imgur.com/79pbq7m.png 您在标题中提到“单行”令人困惑。请看看我的答案是否正确 我将您的标题更改为内容更丰富的标题。很高兴我能帮上忙。 【参考方案1】:

我们可以在 tidyverse 中完成这一切。使用tidyr::pivot_longer 以正确的格式获取数据,其中包含一个值变量和一个分组变量(此处为“名称”)。使用 ggplot 并将 fill 美学映射到分组变量。

library(dplyr)
library(ggplot2)
library(tidyr)

df %>% pivot_longer(!Year)%>%
ggplot(aes(x=Year, y=value, fill=name))+
geom_area()

【讨论】:

以上是关于geom_area 具有分布在多列中的分组变量的主要内容,如果未能解决你的问题,请参考以下文章

如何对具有多列的表中的数据进行分组[重复]

具有分组的数据表中多行和多列的中位数

按键将记录分组到具有多列的单行中

Hive Query 在 Select 中具有多列并按一列分组

我们如何在 MySQL 5.5 中快速进行此查询(按多列分组 + 排序,具有 2 个左连接)?

以整齐的方式将多列作为分组变量传递给 UDF