【发布时间】:2019-08-06 10:55:18
【问题描述】:
我想为包含带有相应百分比的标签的条形图创建一个函数。
以下代码创建了我希望看到的条形图:
percentData <- df %>%
group_by(col1) %>%
count(col2) %>%
mutate(ratio=scales::percent(n/sum(n)))
diagram <- ggplot(df, aes(x=col1, fill=col2))
geom_bar(position = "fill")
geom_text(data=percentData, aes(y=n,label=ratio),
position=position_fill(vjust=0.5))
我想为上面的条形图创建一个函数,以便能够更改df、col1 和col2。
我尝试了以下方法:
newdiagram <- function(data, col1, col2){
percentData <- data %>%
group_by(col1) %>%
count(col2) %>%
mutate(ratio=scales::percent(n/sum(n)))
diagram <- ggplot(data, aes(x=col1, fill=col2))
geom_bar(position = "fill")
geom_text(data=percentData, aes(y=n,label=ratio),
position=position_fill(vjust=0.5))
return(diagram)
}
newdiagram(df, column1, column2)
很遗憾,我收到了列未知的错误消息。我尝试通过使用data$col1 指定列来解决它,但这也不起作用。
【问题讨论】:
标签: r ggplot2 markdown r-markdown