簡體   English   中英

根據值在ggplot中設置標簽

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM