繁体   English   中英

使用X轴上的数字创建堆叠的ggplot2条形图

[英]Create a stacked ggplot2 bar chart with numbers in x-axis

我有一个数据框,我想从该数据框创建一个堆叠的条形图,在x轴上有1和2,而它们的值将根据其值进行堆叠和着色。

one=c(0.4,0.3)
two=c(0.4,0.5)
df=data.frame(one,two)
colnames(df) <- c("1", "2")

ggplot(df,aes(df[,1:2]))+
  geom_bar(position = "stack")
})

在此处输入图片说明

另外,当我试图将其转换为密谋时,我得到ggplot2不知道如何处理uneval类的数据

library(tidyverse)
gather(df)  %>% 
   p1<-ggplot(aes(x = key, y = value, 
         fill = factor(value, levels = sort(unique(value))))) + 
          geom_bar(stat = "identity")
ggplotly(p1)

你的意思是这样吗

library(tidyverse);
stack(df) %>%
    ggplot(aes(ind, y = values, fill = as.factor(values))) +
    geom_bar(stat = "identity")

在此处输入图片说明

我们可以使用从tidyr gather来重塑为“长”格式

library(tidyverse)
gather(df)  %>% 
   ggplot(aes(x = key, y = value, 
         fill = factor(value, levels = sort(unique(value))))) + 
          geom_bar(stat = "identity")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM