作为可重现的示例,请使用
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)