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 diagrammen
- staaf diagrammen
- taart diagrammen
10. Functies
(o.a.if else, for, while, string, datum)
11. SQL / dplyr
(gegevens ophalen uit tabellen)
12. WAR meetkastjes en KNMI
(data ophalen en in grafiek zetten)
13. Qgis
gegevens op de kaart zetten
|
GGplot2
Lijndiagrammen (met x en y waarde)
Lijn of punten
draakinfo<-read.table("http://www.ladylein.nl/R/VB/draakinfo.txt", sep = "\t", header = T)
Grafiek met lijn
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht))
+ geom_line()
ggplot(bron, x-as en y-as)
geom_line() grafiek is een lijn
geom_point() grafiek zijn punten
aes() staat voor esthetics
Esthetisch betekent mooi
maar je kan aes() niet weglaten
anders weet de grafiek niet welke kolom de x-as en
welke kolom de y-as is
|
|
Lijnkleur bepalen
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht))
+ geom_line(color="red", size=5)
Je kan de kleur invullen of de hexadecimale code voor de kleur.
Voordeel dan hoef je niet te weten hoe de kleur heet.
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht))
+ geom_line(color="#FF0000", size=5)
Klik HIER om de kleurcode te bepalen.
|
|
Kleur als label
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
color="draak")) + geom_line()
|
|
Kolom als kleur
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
color=aantaleieren)) + geom_point()
|
|
Kolom als grootte
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
size=aantaleieren)) + geom_point()
|
|
Namen als puntvormen
(rondje, vierkantje, kruisje, driehoekje e.d.)
maak een kolom tot categorie:
factor(draakinfo$naam)
Als je factor gebruikt dan werkt de functie shape die de punten verschillende symbolen geeft.
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
shape = naam)) + geom_point()
|
|
Alle trucs tegelijk met uitgebreide tabel
zelf de kleur bepalen met scale_colour_gradient
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
color=aantaleieren)) + geom_point() + scale_colour_gradient(low="blue", high="red")
|
|
grootte van de punten met size
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
color=aantaleieren, size=aantalprooi)) + geom_point() + scale_colour_gradient(low="blue", high="red")
|
|
extra aanduiding vorm met shape
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht,
color=aantaleieren, size=aantalprooi, shape=naam)) + geom_point() + scale_colour_gradient(low="blue", high="red")
Titel en x-as en y-as labels toevoegen en aanpassen
ggplot(draakinfo, aes(x = maxleeftijd, y = gewicht, color=aantaleieren, size=aantalprooi, shape=naam))
+ geom_point() + scale_colour_gradient(low="blue", high="red")
+ ggtitle("Draken-info") + xlab("Maximale leeftijd") + ylab("Het gewicht")
|
|
Legenda zelf bepalen
labeltje<-c("DE lijn")
y<-c(1,2,3,4,5)
x<-c(1,2,3,4,5)
grafieklijnen<-data.frame(x,y)
ggplot(grafieklijnen, aes(x, y)) +
geom_segment(aes(xend = x, yend = y,
linetype = labeltje)) + geom_line()
of met punten: geom_point()
|
|
Trent-lijnen
diamanteninfo<-read.table("C://R/VB/
diamanteninfo.txt", sep = "\t", header = T)
diamanteninfo
Grafiek met punten
ggplot(diamanteninfo, aes(x = karaat, y = prijs)) +
geom_point()
|
|
Grafiek met trendlijn
ggplot(diamanteninfo, aes(x = karaat, y = prijs)) +
geom_point() + geom_smooth()
Je kan de punten ook weglaten.
|
|
Elke diamantkleur een eigen gekleurde lijn
ggplot(diamanteninfo, aes(x = karaat, y = prijs,
color=kleur)) + geom_point() + geom_smooth()
Zonder geom_smooth() heb je alleen gekleurde punten
Je kan de aes() ook bij geom_point() zetten.
Je kan de plot opdracht in een variabele zetten.
plotdiamanten<-ggplot(diamanteninfo, aes(x=karaat,
y=prijs)) +geom_point(aes(color=kleur))
|
|
Titel boven de grafiek
en x-as en y-as label aanpassen
ggplot(diamanteninfo, aes(x = karaat, y = prijs,
color=kleur)) + geom_point() + geom_smooth()
+ ggtitle("Diamanten-info")
+ xlab("Aantal Karaat") + ylab("De Prijs")
|
|
X-as en Y-as labels met waarden bepalen
ggplot(diamanteninfo, aes(x = karaat, y = prijs,
color=kleur))
+ geom_point() + geom_smooth()
+ ggtitle("Diamanten-info")
+ xlab("Aantal Karaat") + ylab("De Prijs")
+ scale_x_continuous(breaks=seq(0, 10, 0.5))
+ scale_y_continuous(breaks=seq(90, 200, 10))
|
|
Met allemaal opmaak
ggplot(diamanteninfo, aes(x = karaat, y = prijs,
color=kleur)) + geom_point() + geom_smooth()
+ ggtitle("Diamanten\ninformatie")
+ theme(plot.title = element_text(size=20,
face="bold", colour="#990000"))
+ xlab("Aantal Karaat") + ylab("De Prijs")
+ scale_x_continuous(breaks=seq(0, 10, 0.5))
+ scale_y_continuous(breaks=seq(90, 200, 10))
+ theme(axis.title.x = element_text(face="bold",
colour="#990000", size=10),
axis.text.x = element_text(angle=90,
vjust=0.5, size=10))
+ theme(axis.title.y = element_text(face="bold",
colour="#990000", size=10),
axis.text.y = element_text(angle=0,
vjust=0.5, size=10))
\n betekent volgende regel
|
|
hjust en vjust bepalen hoe de tekst staat.
hjust = 0 dan zit het begin van de tekst aan het labelpunt.
hjust = 1 dan zit het einde van de tekst aan het labelpunt.
dat wil je want anders staat de x-as tekst in je grafiek.
|
|
Linetype gebruik je om de soort lijn te wijzigen
geom_line(linetype = "dashed")
|
|
Terug naar top
|