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



Data van meerdere meetkastjes ophalen en een tijdsperiode opgeven


# maak een variabele genaamd 'start', met het beginmoment van je grafiek
start<-"2017-10-20,00:00"

# maak een variabele genaamd 'eind', met het eindmoment van je grafiek
end<-"2018-01-15,23:59"

# maak variabele 'ids', met het nummer van de sensor die je wilt bekijken
# voorbeelden: "13" of "13,14" of "1-50" of "1,2,10-20" etc.
ids<-"104,121"
Er zijn op verschillende plaatsen meetkastjes, zoals Amersfoort, Tilburg en Bergen in Noorwegen.
Die kan je niet met elkaar vergelijken.
Dus je moet weten welke meetkastjes er zijn in de plaats waarvoor je de data wilt ophalen.
Klik hier om te kijken waar welke meetkastjes zijn.
# haal de data op van de server van Meet je Stad
data<-read.table(paste("http://meetjestad.net/data?
type=sensors&start=",start,"&end=",end,"&ids=",ids,"&format=csv", sep=""), sep="\t", header=T, fill=T)

# op de server zijn alle metingen opgeslagen in Universal Time Code.
# Deze UTC omrekenen naar onze lokale tijd
ts<-as.POSIXct(data$timestamp, origin="1970-01-01", tz="UTC")
data$localtime<-as.POSIXct(ts, "CET")
attributes(data$localtime)$tzone <- "CET"

# zoek de hoogste en de laagste temperatuur van de opgehaalde datareeks
# we gebruiken het 5e en 95e percentiel van de meetwaarden, en trekken daar 1 graad af of tellen het erbij
ylow<-quantile(data$temperature,0.05)-1
yhigh<-quantile(data$temperature,0.95)+1

Je kan voor ylow en yhigh ook zelf een waarde invullen.
Bijvoorbeeld in de herfst ylow<-0        bv bij vorst ylow<--15
Bijvoorbeeld in de herfst yhigh<-25     bv bij hittegolf yhigh<-45

# maak een grafiek van de data (lijnen)
ggplot(data=data, aes(localtime,temperature, colour = as.factor(id))) +
geom_line(aes(group = as.factor(id)) ) +
ylim(ylow,yhigh)



# dezelfde grafiek maar dan met lijnen (geom_line)+ punten (geom_point)
ggplot(data=data, aes(localtime,temperature, colour = as.factor(id))) +
geom_line(aes(group = as.factor(id)) ) +
geom_point(aes(group = as.factor(id)) ) +
ylim(ylow,yhigh)


Voor fijnstof wijzig je "temperature" in "PM10" of "PM2.5".
Voor licht wijzig je "temperature" in "light".


Terug naar top