NA是在boxplot ggplot2中绘制的

问题描述 投票:12回答:2

我正试图在ggplot2中绘制一个简单的箱形图。我有物种丰富性与土地利用类。但是,我的数据中有2个NA。出于一些奇怪的原因,他们正在被绘制,即使他们被R理解为NA。任何建议要删除它们?

我正在使用的代码是:

ggplot(data, aes(x=luse, y=rich))+
  geom_boxplot(mapping = NULL, data = NULL, stat = "boxplot", position = "dodge", outlier.colour = "red", outlier.shape = 16, outlier.size = 2, notch = F, notchwidth = 0.5)+
  scale_x_discrete("luse", drop=T)+
  geom_smooth(method="loess",aes(group=1))

但是,该图表包含2个NA用于luse。不幸的是我无法发布图片,但想象一下我的图表中正在添加一个NA栏。

r ggplot2 boxplot na
2个回答
4
投票

您可以尝试在代码的第一行使用subset()函数

ggplot(data=subset(data, !is.na(luse)), aes(x=luse, y=rich))+

建议:Eliminating NAs from a ggplot


0
投票

您还可以在dplyr / tidyverse中使用filter()函数:

data %>% filter(is.na(luse) == FALSE) %>% 
   ggplot(aes(x=luse, y=rich)) +
   geom_boxplot()

这样您就不必创建新对象。

© www.soinside.com 2019 - 2024. All rights reserved.