首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >堆积条形图ggplot2中相同类型的变量

堆积条形图ggplot2中相同类型的变量
EN

Stack Overflow用户
提问于 2021-01-20 08:30:18
回答 1查看 32关注 0票数 1

我正在尝试创建一个堆叠条形图来表示此数据。变量n_paper是使用该方法的论文总数,变量paper_ui是其中有多少论文使用了上涌索引。

代码语言:javascript
复制
     n_papers paper_ui               methods
1        6        3                      AR
2        4        2                    ARMA
3        5        4                   ARIMA
4        1        0                  SARIMA
5        6        1     Loess decomposition
6        2        1 Classical decomposition
7        1        0   Exponential smoothing

ggplot(df,aes(x = methods, y = n_papers)) + 
  geom_bar(stat="identity", color="dodgerblue4", fill="dodgerblue4")+
  scale_x_discrete() + xlab("Time series methods") +
  ylab("Nº of papers") +
  theme(
    axis.title.x = element_text(size=15),
    axis.title.y = element_text(size=15),
    axis.text = element_text(size=12),
    axis.text.x = element_text(angle=45, hjust=1)
  )

该图如下所示,但我希望在该图中使用变量paper_ui。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-01-20 08:37:16

尝尝这个。您必须将您的数据调整为long,然后绘制:

代码语言:javascript
复制
library(ggplot2)
library(dplyr)
library(tidyr)
#Code
df %>% pivot_longer(-methods) %>%
  ggplot(aes(x = methods, y = value,color=name,fill=name)) + 
  geom_bar(stat="identity")+
  scale_x_discrete() + xlab("Time series methods") +
  ylab("Nº of papers") +
  theme(
    axis.title.x = element_text(size=15),
    axis.title.y = element_text(size=15),
    axis.text = element_text(size=12),
    axis.text.x = element_text(angle=45, hjust=1)
  )

输出:

使用的一些数据:

代码语言:javascript
复制
#Data
df <- structure(list(n_papers = c(6L, 4L, 5L, 1L, 6L, 2L, 1L), paper_ui = c(3L, 
2L, 4L, 0L, 1L, 1L, 0L), methods = c("AR", "ARMA", "ARIMA", "SARIMA", 
"Loess decomposition", "Classical decomposition", "Exponential smoothing"
)), row.names = c(NA, -7L), class = "data.frame")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65801512

复制
相关文章

相似问题

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