R 绘制两组数据的时间序列和回归线
我有来自不同年份的两个站点的数据(注意采样年份的差异)。样本如下:R 绘制两组数据的时间序列和回归线,r,ggplot2,R,Ggplot2,我有来自不同年份的两个站点的数据(注意采样年份的差异)。样本如下: df<- data.frame( year= c(seq(1997,2016,1), seq(2001,2017,1)), site= c(rep("cr", 20),rep("ec", 17)), mean= sample(1:50,37)) 我想用这个图表来说明一些细节: 每个组(站点)的点和连接每个点的线将具有不同的颜色(黑色、红色) 每组(站点)的回归线将为
df<- data.frame( year= c(seq(1997,2016,1), seq(2001,2017,1)),
site= c(rep("cr", 20),rep("ec", 17)),
mean= sample(1:50,37))
我想用这个图表来说明一些细节:
- 每个组(
)的点和连接每个点的线将具有不同的颜色(黑色、红色)站点
- 每组(
)的回归线将为虚线,并与上面指定的颜色相匹配李>站点
- 回归线不应延伸至y轴,且应限于数据的长度 -点不需要是可见的。只有连接每个点的线才可见李>
- 最好,虚线回归线不会显示阴影95%CI
ggplot(data = df, aes(x = year, y = mean, group= site, color = site))+
geom_line() +
geom_point(size=0.5)+
geom_smooth(method = "lm", se = FALSE, size= 0.5, linetype = "dashed")+
scale_color_manual(values=c("#CC0000", "#000000"))+
theme_minimal()+
scale_x_continuous("Year",limits = c(1997, 2020), breaks =
seq(1995,2020,5)) +
scale_y_continuous("Mean Monthly Abundance", limits = c(0, 1500),
breaks=seq(0, 1500, by = 100)) +
theme_bw()+
theme(axis.line = element_line(colour = "black"),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank())
应通过在
geom_smooth
零件中的aes
调用外部写入linetype=“虚线”
来修复错误。
ggplot(data = df, aes(x = year, y = mean, group= site, color = site))+
geom_line() +
geom_point(size=0.5)+
geom_smooth(method = "lm", se = FALSE, size= 0.5, linetype = "dashed")+
scale_color_manual(values=c("#CC0000", "#000000"))+
theme_minimal()+
scale_x_continuous("Year",limits = c(1997, 2020), breaks =
seq(1995,2020,5)) +
scale_y_continuous("Mean Monthly Abundance", limits = c(0, 1500),
breaks=seq(0, 1500, by = 100)) +
theme_bw()+
theme(axis.line = element_line(colour = "black"),
panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank())