我也有類似的問題,所以我模仿它自己。我不是一個高級的R用戶,所以也許有人可以把它放到一個函數中。 此方法創建一個所有IRF的圖,其中y = 0處的垂直位置,x軸上的脈衝名稱和y軸上的響應。 IRF圖也是尺寸調整的。
「VAR_BS_9016_5VAR」是我的「最近」的對象。我使用了5個變量,但可以輕鬆縮短或擴展此方法。
par(mfrow=c(5,5), oma = c(0,0,0,0) + 0.1, mar = c(5,5,0,0) + 0.1)
for (i in 1:5){
for (j in 1:5){
var_plot=irf(VAR_BS_9016_5VAR, impulse = paste(colnames(VAR_BS_9016_5VAR$y)[i]), response=paste(colnames(VAR_BS_9016_5VAR$y)[j]), n.ahead = 20, ortho=TRUE, boot=TRUE, runs=1000, ci=0.9)
plot(x=c(1:21), y=unlist(var_plot$Lower), type="l", lwd = 3, lty=2,col="red", ylab=paste(colnames(VAR_BS_9016_5VAR$y)[j]), xlab=paste(var_plot$impulse), ylim=range(c(unlist(var_plot$Lower),unlist(var_plot$Upper))))
lines(x=c(1:21),y=unlist(var_plot$Upper),type="l",lwd = 3, lty=2,col="red")
lines(x=c(1:21),y=unlist(var_plot$irf),type="l", lwd = 3)
abline(a = NULL, h = 0)
}
}
任何想法如何畫一條信心帶而不是兩條線?我需要在較低和較高的置信區間內填滿房間。 – RPacker
添加了一個示例圖 – blmoore