plotJL <- function(city="JL") { x_label <- seq(from=as.Date("2022/2/25"),to=as.Date("2022/5/25"),by=7) pfile=paste0("Fig_",city,".png") png(pfile,width = 500*6,height = 500*4) par( mfrow=c(2,2),mar=c(5,5,5,1)*3 ) plot(df.pred$date,df.pred$dI,pch='x',xaxt='n', xlab="Date",ylab="Daily Confirmed" ,cex.lab=3,cex.axis = 2, cex=3) axis(1,x_label,format(x_label,"%m-%d"),las=1,cex.axis=2) title(main = "A",cex.main=3) predlines <- c(1:10) plty <- c(2:11) pcol <- c(2:11) matlines(df.mean$date,df.mean[,3+predlines], lty=1,col=1,lwd = 3) matlines(df.pred$date,df.pred[,3+predlines], lty=plty,col=pcol,lwd = 2) abline(v=df.mean$date[c(18,27)],lty=2) legend("topright",paste("Predicted on",df.pred$date[(18:50)][predlines]), lty=plty,col=pcol,cex = 3,lwd=2 ) plot(df.pred$date,df.pred$dI,pch='x',xaxt='n', xlab="Date",ylab="Daily Confirmed" ,cex.lab=3,cex.axis = 2, cex=3) axis(1,x_label,format(x_label,"%m-%d"),cex.axis=2) title(main = "B",cex.main=3) predlines <- c(11:18) plty <- c(2:9) pcol <- c(2:9) matlines(df.mean$date,df.mean[,3+predlines], lty=1,col=1,lwd = 3) matlines(df.pred$date,df.pred[,3+predlines], lty=plty,col=pcol,lwd = 2) abline(v=df.mean$date[c(28,35)],lty=2) legend("topright",paste("Predicted on",df.pred$date[(18:50)][predlines]), lty=plty,col=pcol,cex = 3,lwd=2 ) plot(df.pred$date,df.pred$dI,pch='x',xaxt='n', xlab="Date",ylab="Daily Confirmed" ,cex.lab=3,cex.axis = 2, cex=3) axis(1,x_label,format(x_label,"%m-%d"),cex.axis=2) title(main = "C",cex.main=3) predlines <- c(19:26) plty <- c(2:9) pcol <- c(2:9) matlines(df.mean$date,df.mean[,3+predlines], lty=1,col=1,lwd = 3) matlines(df.pred$date,df.pred[,3+predlines], lty=plty,col=pcol,lwd = 2) abline(v=df.mean$date[c(36,43)],lty=2) legend("topright",paste("Predicted on",df.pred$date[(18:50)][predlines]), lty=plty,col=pcol,cex = 3,lwd=2 ) plot(df.pred$date,df.pred$dI,pch='x',xaxt='n', xlab="Date",ylab="Daily Confirmed" ,cex.lab=3,cex.axis = 2, cex=3) axis(1,x_label,format(x_label,"%m-%d"),cex.axis=2) title(main = "D",cex.main=3) predlines <- c(27:33) plty <- c(2:8) pcol <- c(2:8) matlines(df.mean$date,df.mean[,3+predlines], lty=1,col=1,lwd = 3) matlines(df.pred$date,df.pred[,3+predlines], lty=plty,col=pcol,lwd = 2) abline(v=df.mean$date[c(44,50)],lty=2) legend("topright",paste("Predicted on",df.pred$date[(18:50)][predlines]), lty=plty,col=pcol,cex = 3,lwd=2 ) dev.off() }
时间: 2024-02-04 15:02:32 浏览: 273
这段代码是用于绘制四个子图的函数,每个子图都是基于来自数据框 df.pred 和 df.mean 的数据绘制的。每个子图都有一个标题(A,B,C,D),并且包含了预测线和实际线。其中预测线是基于预测数据绘制的,实际线是基于实际数据绘制的。每个子图的预测线都有一个图例,用于说明预测线是基于哪个日期的数据绘制的。这些图形将被保存在文件名为 "Fig_JL.png" 的 PNG 文件中。
相关问题
plotJL <- function(city="JL") { x_label <- seq(from=as.Date("2022/2/25"),to=as.Date("2022/5/25"),by=7) pfile=paste0("Fig_",city,".png") png(pfile,width = 500*6,height = 500*4) par( mfrow=c(2,2),mar=c(5,5,5,1)*3 )
这段代码是一个用来绘制图表的 R 语言函数,函数名为 plotJL。该函数有一个参数 city,默认值为 "JL"。函数内部定义了一个长度为 14 的日期序列,并将其赋值给变量 x_label。接下来,函数将绘制一个大小为 500*6*500*4 的 PNG 图片,并将文件名保存在变量 pfile 中。函数使用 par() 函数将画布分为 2 行 2 列,并定义了每个小图的边距。
x_label <- seq(from=as.Date("2022/2/25"),to=as.Date("2022/5/25"),by=7)
这是一段 R 代码,用于创建一个日期序列。具体来说,它使用了以下参数:
- `from`:起始日期,这里是2022年2月25日
- `to`:结束日期,这里是2022年5月25日
- `by`:步长,这里是7天,即一周
该代码将生成一个长度为14的日期向量,每个元素的间隔为一周,可以用于在 R 中创建一个时间序列。
阅读全文