如果图像1是由我的项目主管发送的一个小的基本布局,很抱歉!我在观察时间(Obsv_time)上创建了一个总灰海豹丰度( total )的散点图,并在顶部安装了一个gam,如图像2所示:
plot(Total ~ Obsv_time,
data = R_Count,
ylab = "Total",
xlab = "Observation Time (Days)",
pch = 20, cex = 1, bty = "l",col="dark grey")
lines(R_Count$Obsv_time, fitted(gam.tot2))我想以某种方式在图表上显示相应的季节(图像1) -从一个分类因素变量(4个层次:育种前,育种,后育种,蜕皮),这相当于Obsv_time。
我不确定我是否需要绘制一个第二轴,或者只是添加标签到graph...and,如何做每一个!谢谢!
发布于 2018-03-25 11:41:57
你可以用R基图形来做这件事。删除原地块中的x轴,分别添加一个带有季节标签的轴。你可以通过叠加多边形来指示季节。
## Some bogus data
x = sort(runif(50,0,250))
y = 800*(sin(x/40) + x/100 + rnorm(50,0, 0.2)) + 500
FittedY = 800*(sin(x/40) + x/100)+500
plot(x,y, pch= 20, col='lightgray', ylim=c(300,2700), xaxt='n',
xlab="", ylab='Total')
lines(x, FittedY)
axis(1, at=c(25,95,155,215), tick=FALSE,
labels=c('PreBreed', 'Repro', 'PostBreed', 'Moulting'))
rect(c(-10,65,125,185), 0, c(65,125,185,260), 3000,
col=rainbow(4, alpha=0.05), border=NA)

发布于 2018-03-25 11:05:11
如果您能够使用ggplot2,您可以添加(或从时间上计算)另一个因素变量到您的数据框架,这将是您的季节。然后,这只是一个使用颜色(或任何其他)美学的问题,它将使用这个季节的变化。
require(ggplot2)
df <- data.frame(total = c(26, 41, 31, 75, 64, 32, 7, 89),
time = c(1, 2, 3, 4, 5, 6, 7, 8))
df$season <- cut(df$time, breaks=c(0, 2, 4, 6, 8),
labels=c("winter", "spring", "summer", "autumn"))
ggplot(df, aes(x=time, y=total)) +
geom_smooth(color="black") +
geom_point(aes(color=season))https://stackoverflow.com/questions/49475013
复制相似问题