r语言 - 不要使用 ggplot2 绘制某些计数



作为可重现的示例,请使用

library(tidyverse)
iris_count <- count(iris, Species)
iris_count %>%
mutate(Species2 = ifelse(Species == "setosa", NA, as.character(Species))) %>%
ggplot(aes(reorder(Species2, -n), n)) +
geom_col(na.rm = TRUE)

我想从情节中删除NA,但在这种情况下,选项na.rm = TRUE似乎没有做我想要的。

使用scale_x_discrete和参数na.translate = FALSE。从scale_x_discrete文档:

na.translate与连续刻度不同,离散刻度可以轻松显示缺失值,并且默认情况下会这样做。如果要从离散刻度中删除缺失值,请指定 na.translate = FALSE。

library(ggplot2)
library(dplyr)
iris_count <- count(iris, Species)
iris_count %>%
mutate(Species2 = ifelse(Species == "setosa", NA, as.character(Species))) %>%
ggplot(aes(reorder(Species2, -n), n)) +
geom_col() + 
scale_x_discrete(na.translate = FALSE)

最新更新