1
下面的代碼顯示ggplot2
會自動刪除第二個觀察值,但仍然保持y軸的範圍從1到1000.如何使ggplot2
適當縮放而不需要硬編碼範圍本人?ggplot2自動刪除缺失值但不重新縮放座標軸
df <- data.frame(x = c(1, NA),
y = c(1, 1000))
ggplot(df) + geom_point(aes(x, y))
下面的代碼顯示ggplot2
會自動刪除第二個觀察值,但仍然保持y軸的範圍從1到1000.如何使ggplot2
適當縮放而不需要硬編碼範圍本人?ggplot2自動刪除缺失值但不重新縮放座標軸
df <- data.frame(x = c(1, NA),
y = c(1, 1000))
ggplot(df) + geom_point(aes(x, y))
如何在繪圖之前刪除x中缺失值的行?
library(dplyr)
df %>%
filter(!is.na(x)) %>%
ggplot() +
geom_point(aes(x, y))
或者使用na.omit
df %>%
na.omit() %>%
ggplot() +
geom_point(aes(x, y))
理想我不想硬編碼'過濾器(!is.na(X))',因爲我不事先知道哪些變量會丟失值。設置'limits = NA'不起作用(使用此數據集'df < - data.frame(x = c(1,NA,2),y = c(1,1000,10))' – Heisenberg
@Heisenberg如何替換''filter(!is.na(x))''with'na.omit()'? – www
實際上,我可以使用'filter_'或'drop_na_'以編程方式給出一個字符串作爲變量名,所以第一個解決方案可以工作。我仍然有點驚訝ggplot2的行爲如此 – Heisenberg