# https://bmcnoldy.rsmas.miami.edu/tropics/oni/ONI_NINO34_1854-2022.txt
<- "NINO34"
dom <- 1854
year.start <- 2024
year.end <- paste0("ONI_", dom, "_", year.start, "-", year.end, ".txt")
fname <- read.table(fname, header = TRUE, skip = 9)
enso $yearmon <- as.Date(paste0(enso$YEAR, "-", enso$MON.MMM, "-15"))
enso==-99.99] = NA enso[enso
ENSO
graphics
climate
エルニーニョ・南方振動
Historic Oceanic Niño Index and Niño 3.4 DataのData file with monthly & seasonal values since 1854をクリックしてNINO34のSSTデータを取得。 year.end
は適宜編集する。
±0.5°Cの期間に陰影をつけ、10年毎にラベルをつけ、2年毎に目盛を打つ。
<- function(yearmon, sst.anom){
plot.sst plot(yearmon, sst.anom, xaxt="n",
type="l", xlab = "time", ylab="°C",
ylim=c(-3, 3))
axis(1, at=pretty(yearmon, 10), labels=format(pretty(yearmon, 10), "%Y"))
axis(1, at=pretty(yearmon, 40), labels = FALSE, tck = -0.02)
axis(3, at=pretty(yearmon, 40), labels = FALSE, tck = -0.02)
axis(4)
polygon(c(yearmon, rev(yearmon)),
c(ifelse(sst.anom < 0.5, 0.5, sst.anom),
rep(0.5, length(sst.anom))), col="pink", border = FALSE)
polygon(c(yearmon, rev(yearmon)),
c(ifelse(sst.anom > -0.5, -0.5, sst.anom),
rep(-0.5, length(sst.anom))), col="lightblue", border = FALSE)
abline(h = -2, col = "lightblue", lty=2, lwd=2)
abline(h = -1, col = "lightblue", lty=2, lwd=1.5)
abline(h = -0.5, col = "lightblue", lty=2, lwd=1)
abline(h = 0.5, col = "pink", lty=2, lwd=1)
abline(h = 1, col = "pink", lty=2, lwd=1.5)
abline(h = 2, col = "pink", lty=2, lwd=2)
}
2段に分けてプロットする。
par(mfrow=c(2, 1), mar=c(3, 3, 1, 1))
<- enso$yearmon >= as.Date("1871-01-01") & enso$yearmon < as.Date("1950-01-01")
period <- enso$yearmon[period]
yearmon <- enso$NINO34_ANOM[period]
sst.anom plot.sst(yearmon, sst.anom)
title(paste(dom, "SST anomaly"))
<- enso$yearmon > as.Date("1950-01-01") & !is.na(enso$NINO34_ANOM)
period <- enso$yearmon[period]
yearmon <- enso$NINO34_ANOM[period]
sst.anom plot.sst(yearmon, sst.anom)