有没有办法在ggplot中为特定因子级别添加一行? 这个简单的例子可以提供一个基础来解释我想说的话。在这种情况下,我想避免绘制最后一个级别。
ggplot(BOD, aes(x=factor(Time), y=demand, group=1)) + geom_line() + geom_point()
答案 0 :(得分:1)
您只需创建一个NA
的新变量 - Time == 7
的值:
BOD$demand2[BOD$Time<7] <- BOD$demand[BOD$Time<7]
然后绘图:
ggplot(BOD, aes(x=factor(Time), y=demand2, group=1)) +
geom_line() +
geom_point() +
theme_classic()
您也可以使用data.table
- package:
library(data.table)
ggplot(data = as.data.table(BOD)[Time==7, demand := NA],
aes(x=factor(Time), y=demand, group=1)) +
geom_line() +
geom_point() +
theme_classic()
要回答您的评论,您可以在7处包含以下点:
ggplot(BOD, aes(x=factor(Time), y=demand2, group=1)) +
geom_line() +
geom_point(aes(x=factor(Time), y=demand)) +
theme_classic()