system(" wget http://vortex.nsstc.uah.edu/data/msu/v6.0/tlt/uahncdc_lt_6.0.txt")
lt<-read.table("http://vortex.nsstc.uah.edu/data/msu/v6.0/tlt/uahncdc_lt_6.0.txt", fill=TRUE, head=TRUE, nrows=527)
mt<-read.table("http://vortex.nsstc.uah.edu/data/msu/v6.0/tmt/uahncdc_mt_6.0.txt", fill=TRUE, head=TRUE, nrows=527)
tp<-read.table("http://vortex.nsstc.uah.edu/data/msu/v6.0/ttp/uahncdc_tp_6.0.txt", fill=TRUE, head=TRUE, nrows=527)
ls<-read.table("http://vortex.nsstc.uah.edu/data/msu/v6.0/tls/uahncdc_ls_6.0.txt", fill=TRUE, head=TRUE, nrows=527)
nino<-read.table("https://www.cpc.ncep.noaa.gov/data/indices/sstoi.indices", fill=TRUE, head=TRUE)

f<-function(nm,skip=7)
{
URL<-"https://www.metoffice.gov.uk/pub/data/weather/uk/climate/stationdata/oxforddata.txt"
d<-read.table(URL,skip=7, skipNul = TRUE, fill=TRUE,flush=TRUE)
names(d)<- c("Year", "Month", "tmax", "tmin",  "af","rain", "sun") 
d$Year<-clean(d$Year)
d$tmin<-clean(d$tmin)
d$tmax<-clean(d$tmax)
d$af<-clean(d$af)
d$rain<-clean(d$rain)
d$sun<-clean(d$sun)
d$date<-as.Date( paste(d$Year,d$Month , 15 , sep = "/" )  , format = "%Y/%m/%d" )
d$month<-lubridate:::month(d$date,label=TRUE)
d$station<-"oxford"
d
}
library(aqm)
d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))

ox<-f()

ox$date<-dmy(paste(1,ox$Month, ox$Year))
ox %>% filter(date %in% unique(d$date)) ->ox
ox %>% group_by(Month) %>% mutate(oxford=tmax-mean(tmax)) %>% ungroup() %>% dplyr::select(date,oxford) ->ox

Data

Raw

Lower troposphere

rp<-1
d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Mid troposphere

d<-mt
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Tropopause

d<-tp
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Lower stratosphere

d<-ls
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

El nino index

nino$date<-dmy(paste(1,nino$MON,nino$YR))
dd<-xts(nino[,c(4,6,8,10)],nino$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

El nino vs tropics

d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
d<-merge(nino,d)

dd<-xts(d[,c(11,23)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Northern hemisphere LT vs Oxford Meteorological temperatures and El nino

d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
d<-merge(ox,d)
d<-merge(nino[,10:11],d)
dd<-d[,c(2,3,9)]
dd$NHx4<-dd$NH*4
dd<-dd[,c(1,2,4)]
dd<-xts(dd,d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

One year rolling mean

Lower troposphere

rp<-12
d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Mid troposphere

d<-mt
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Tropopause

d<-tp
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Lower stratosphere

d<-ls
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

El nino index

nino$date<-dmy(paste(1,nino$MON,nino$YR))
dd<-xts(nino[,c(4,6,8,10)],nino$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

El nino vs tropics

d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
d<-merge(nino,d)
dd<-xts(d[,c(11,23)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Northern hemisphere LT vs Oxford Meteorological temperatures and El nino

d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
d<-merge(ox,d)
d<-merge(nino[,10:11],d)
dd<-d[,c(2,3,9)]
dd$NHx4<-dd$NH*4
dd<-dd[,c(1,2,4)]
dd<-xts(dd,d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Five year rolling mean

Lower troposphere

rp<-60
d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Mid troposphere

d<-mt
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Tropopause

d<-tp
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Lower stratosphere

d<-ls
d$date<-dmy(paste(1,d$Mo,d$Year))
dd<-xts(d[,c(3,6,9,12)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

El nino index

nino$date<-dmy(paste(1,nino$MON,nino$YR))
dd<-xts(nino[,c(4,6,8,10)],nino$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

El nino vs tropics

d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
d<-merge(nino,d)

dd<-xts(d[,c(11,23)],d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()

Northern hemisphere LT vs Oxford Meteorological temperatures and El nino

d<-lt
d$date<-dmy(paste(1,d$Mo,d$Year))
d<-merge(ox,d)
d<-merge(nino[,10:11],d)
dd<-d[,c(2,3,9)]
dd$NHx4<-dd$NH*4
dd<-dd[,c(1,2,4)]
dd<-xts(dd,d$date)
dygraph(dd) %>% dyRoller(rollPeriod = rp) %>% dyRangeSelector()