我有一个数据集,其中包含多个NA值。绘制此数据时,ggplot的geom_line()选项可以跨NA值连接线。有没有办法让ggplot跳过跨越NA值的行?
编辑:向所有参与者致歉。我在操纵数据框时犯了一个错误。我想出了我的问题。当我创建子集时,我的x轴不连续。缺少的数据没有被NA替换,因此数据被链接,因为在行之间的子集中没有创建NA。
答案 0 :(得分:12)
geom_line
会为NA
列中的y
确定中断,但它会加入NA
列中的x
个值。
# Set up a data frame with NAs in the 'x' column
independant <- c(0, 1, NA, 3, 4)
dependant <- 0:4
d <- data.frame(independant=independant, dependant=dependant)
# Note the unbroken line
ggplot(d, aes(x=independant, y=dependant)) + geom_line()
我认为您的NA
值在as.POSIXlt(date)
。如果是这样,一种解决方案是将NA
值的列映射到y
,然后使用coord_flip
使y
轴水平:
ggplot(d, aes(x=dependant, y=independant)) + geom_line() +
coord_flip()
大概你的代码是:
ggplot(crew.twelves, aes(x=laffcu, y=as.POSIXlt(date)) + geom_line() +
coord_flip()