R 在ggplot中,我不想标记值为零的几何图形列,只想标记一个';s有一个值(它们都是正的)

R 在ggplot中,我不想标记值为零的几何图形列,只想标记一个';s有一个值(它们都是正的),r,ggplot2,label,geom-col,R,Ggplot2,Label,Geom Col,在几何图形上标记列时,我可以使用以下代码标记它们: geom_text(aes(x = Date, y = Cases, label = Cases), vjust = -0.5)+ 某些情况下的值为零,我不想显示这些值。您也可以在调用geom_label()时过滤数据。: 试试geom_text(aes(x=Date,y=Cases,label=ifelse(Cases!=0,Cases,”),vjust=-0.5)ifelse,很有效,非常感谢,每天都能学到更多!这回答了你的问题吗? st

在几何图形上标记列时,我可以使用以下代码标记它们:

geom_text(aes(x = Date, y = Cases, label = Cases), vjust = -0.5)+

某些情况下的值为零,我不想显示这些值。

您也可以在调用
geom_label()时过滤数据。


试试
geom_text(aes(x=Date,y=Cases,label=ifelse(Cases!=0,Cases,”),vjust=-0.5)
ifelse,很有效,非常感谢,每天都能学到更多!这回答了你的问题吗?
structure(list(x = c("A", "B", "C", "D", "E", "F"), n = c(3, 
5, 10, 7, 5, 0)), class = c("tbl_df", "tbl", "data.frame"), row.names = c(NA, 
-6L))

ggplot2::ggplot(df, aes(x = x, y = n, label = n))+
  geom_col(stat = "identity")+
  geom_label(data = df %>% dplyr::filter(n > 0), vjust = 0.5)