ladyLein startpagina 0. R install & library 1. R start 2. Vectoren (een rij waarden) 3. Matrixen (tabellen) 4. Statistieken (min, max, gemiddelde, standaard defiatie) 5. Factoren (-categorieën/typen) 6. Data frames (wat is een dataframe, inlezen txt en csv bestanden) 7. Correlatie in de grafiek 8. Plot 9. GGplot2 (lijn, staaf, taart) 10. Functies (o.a.if else, for, while, string, datum) 11. SQL / dplyr (gegevens ophalen uit tabellen) 12. WAR meetkastjes en KNMI - Locaties meetkastjes - Data één meetkastje - Meerdere meetkastjes +tijdreeks - Waar welke meetkastjes - KNMI data - WAR met KNMI data - Analyse meetkastjes - Waarnemingen 13. Qgis gegevens op de kaart zetten |
KNMI data# maak een variabele genaamd 'start', met het beginmoment van je grafiek start<-"2017-01-01,00:00" # maak een variabele genaamd 'eind', met het eindmoment van je grafiek end<-"2017-12-31,23:59" # zet de starttijd en eindtijd om in het formaat van de KNMI API knmistart<-unlist(strsplit(start, ","))[1] knmistart<-gsub("-", "", knmistart) knmiend<-unlist(strsplit(end, ","))[1] knmiend<-gsub("-", "", knmiend) # haal temperatuur en luchtvochtigheid data op van het KNMI knmidata<-read.table(paste("http://projects.knmi.nl/klimatologie/uurgegevens/getdata_uur.cgi?stns=260&vars=T:U&start=",knmistart,"01&end=",knmiend,"24",sep=""), sep=",", header=F) # voeg kolomnamen toe colnames(knmidata) <- c("station", "dag", "uur", "temperatuur", "luchtvochtigheid") # mogelijke data van het KNMI om uit te kiezen, of allemaal in één keer knmidata<-read.table(paste("http://projects.knmi.nl/klimatologie/uurgegevens/getdata_uur.cgi?stns=260&vars=DD:FF:FX:T:U:SQ:Q:DR:R:O:S:P&start=",knmistart,"01&end=",knmiend,"24",sep=""), sep=",", header=F) colnames(knmidata) <- c("station", "dag", "uur", "windrichting", "windsnelheid", "windstoot", "temperatuur", "relvocht", "duurzon","straling","duurneerslag","regenvoorkomend","onweervoorkomend", "sneeuwvoorkomend","luchtdruk") # zet de KNMI UTC tijd om naar lokale tijd tsknmi <- as.POSIXct(strptime(paste(knmidata$dag,knmidata$uur, sep=""), "%Y%m%d%H"), tz="UTC") # verschuif de KNMI tijd 30 minuten naar voren, # omdat de meetwaarden het gemiddelde zijn over het voorgaande uur knmidata$localtime <- as.POSIXlt(tsknmi, "CET", tz="CET")-30*60 attributes(knmidata$localtime)$tzone <- "CET" # voeg een kolom toe met het station 'id': knmi knmidata$id<-rep("knmi",dim(knmidata)[1]) # deel de temperatuur door 10 om dezelfde schaal als MJS te krijgen knmidata$temperatuur<- knmidata$temperatuur/10 #plot ggplot(data=knmidata, aes(localtime,temperatuur, colour = as.factor(id))) + geom_line(aes(group = as.factor(id)) ) # Met x-as opmaken # Datums om de 15 dagen en 90 graden tov de x-as. ggplot(data=knmidata, aes(localtime,temperatuur, colour = as.factor(id))) + geom_line(aes(group = as.factor(id)) ) + scale_x_datetime(breaks = date_breaks("15 day"),labels = date_format("%d/%m")) + theme(axis.text.x = element_text(angle = 90, hjust = 1)) Terug naar top |