[英]Setting labels in ggplot based on value
我正在制作一個帶有百分比標簽的 ggplot(餅圖)。 我想設置如果百分比小於 1%,則 label 將為“<1%”。 有沒有辦法設置這個?
正如@teunbrand 所建議的那樣。 此處 label < 10%。
library(dplyr)
library(ggplot2)
data <- data.frame(a=c("a","a","a","a","a","a",
"b",
"c","c","c","c","c","c"),
b=1:13)
data <- data %>%
group_by(a) %>%
count() %>%
ungroup() %>%
mutate(per=`n`/sum(`n`))
ggplot(data=data)+
geom_bar(aes(x="", y=per, fill=a),
stat="identity",
width = 1)+
coord_polar("y", start=0)+
theme_void()+
geom_text(aes(x=1, y = cumsum(per) - per/2,
label=ifelse(per < 0.1, "<10%",scales::percent(per))))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.