U ovom delu ćemo razmotriti dodatne komande za crtanje u R. Unesimo sledeće tri komande da bismo kreirali tri promenljive.
X <- c(3, 4, 6, 6, 7, 8, 9, 12)
B1 <- c(4, 5, 6, 7, 17, 18, 19, 22)
B2 <- c(3, 5, 8, 10, 19, 21, 22, 26)
Nacrtajmo B1
koristeći y osu od 0 do 25.
plot(X, B1, type="o", pch = 17, cex=1.2, col="darkgreen", ylim=c(0, 25))
Dodajmo sada B2
na grafik.
lines(B2, type="o", pch=16, lty=2, col="blue")
Uočiti kako smo nacrtali prvu krivu, a potom dodali drugu koristeći lines()
komandu. Dodajmo sada naslov koristeći title()
komandu.
title(main="Moj prvi R grafik", col.main="blue", font.main=2)
Na internetu možete naći informaciju u vezi argumenata koji se mogu koristiti za boju i tip linija. Uočiti koje su podrazumevane oznake za horizontalnu i vertikalnu osu. Uočiti takođe da druga kriva izlazi van okvira grafika.
Ovo je drugi primer u kome izračunavamo graničnu vrednost y ose. Kreirajmo sledeće tri promenljive, tj. vektora.
B1 <- c(1, 2, 4, 5, 7, 12, 14, 16, 19)
B2 <- c(2, 3, 6, 7, 8, 9, 11, 12, 18)
B3 <- c(0, 1, 7, 3, 2, 2, 7, 9, 13)
Izračunajmo maksimalnu vrednost B1
, B2
i B3
.
yosamax <- max(B1, B2, B3)
yosamax
Crtajmo grafik sa vertikalnom osom od 0 do yosamax
. Potom onemogućimo podrazumevajuće vrednosti osa i njihove oznake korišćenjem argumanata axes = FALSE, ann=FALSE
, tako da možemo kreirati sopstvene ose. Ovaj pristup (onemogućavanje podrazumevajućih vrednosti osa) je veoma važan u crtanju sa R.
plot(B1, pch = 15, type="o", col="blue", ylim=c(0, yosamax), axes=FALSE, ann=FALSE)
axis(1, at=1:9, lab=c("A","B","C","D","E", "F", "G","H", "I"))
Prvi argument u axis()
komandi (1
) definiše horizontalnu osu. at
argument definiše gde locirati oznake osa. Vektor lab
čuva vrednosti tih oznaka. Kreirajmo sada y osu sa horizontalnim oznakama koja će prikazati crtice za svaku parnu vrednost.
axis(2, las=1, at=2*0: yosamax)
Argument las
kontroliše orijentaciju oznaka osa. Pokušajte uneti druge vrednosti. Nacrtajmo okvir oko grafika. Potom dodajmo dve nove krive korišćenjem lines()
komande.
box()
lines(B2, pch = 16, type="o", lty=2, col="red")
lines(B3, pch = 17, type="o", lty=3, col="darkgreen")
Kreirajmo naslov.
title(main="My line plots in R", col.main="red", font.main=2)
Označimo x i y ose.
title(xlab=toupper("Slova"), col.lab="purple")
title(ylab=tolower("BROJEVI"), col.lab="brown")
Uočiti toupper
komandu koja osigurava da je tekst napisan velikim slovima. tolower
komanda osigurava da je tekst napisan malim slovima.
Kreirati legendu na lokaciji (1, yosamax
).
legend(1, yosamax, c("B1","B2", "B3"), cex=0.7, col=c("blue", "red", "darkgreen"), pch=c(15, 16, 17), lty=1:3)
cex
argument omogućava kontrolu veličine fonta, pri čemu je podrazumevajuća vrednost 1. Možete proveriti na internetu koje su moguće vredosti parametara pch
, type
i lty
tako što ćete uneti u polje za pretragu na primer, R pch
. Ovo je finalna verzija vašeg grafika:
Reklo bi se da ovo i nije bilo tako teško! Međutim, nužno je znati neke od komandi i biti spreman za eksperimente sa argumentima i parametrima tih komandi. U blogu 8 razmotrićemo neke od analitičkih tehnika u R.
Doviđenja za sada!
David
Dodatak: Korišćeni R kodovi
# Kreirajmo tri promenljive. X <- c(3, 4, 6, 6, 7, 8, 9, 12) B1 <- c(4, 5, 6, 7, 17, 18, 19, 22) B2 <- c(3, 5, 8, 10, 19, 21, 22, 26) # Nacrtajmo B1 korišćenjem y ose od 0 do 25. plot(X, B1, type="o", pch = 17, cex=1.2, col="darkgreen", ylim=c(0, 25)) # Dodajmo promenljivu B2 na grafik. lines(B2, type="o", pch=16, lty=2, col="blue") # Kreirajmo naslov. title(main="Moj prvi R grafik", col.main="blue", font.main=2) # Kreirajmo tri nove promenljive. B1 <- c(1, 2, 4, 5, 7, 12, 14, 16, 19) B2 <- c(2, 3, 6, 7, 8, 9, 11, 12, 18) B3 <- c(0, 1, 7, 3, 2, 2, 7, 9, 13) # Izračunajmo maksimalnu vrednost B1, B2 i B3, a potom je prikažimo. yosamax <- max(B1, B2, B3) yosamax # Nacrtajmo B1 korišćenjem y ose od 0 do yosamax. plot(B1, pch = 15, type="o", col="blue", ylim=c(0, yosamax), axes=FALSE, ann=FALSE) axis(1, at=1:9, lab=c("A","B","C","D","E", "F", "G","H", "I")) axis(2, las=1, at=2*0: yosamax) # Nacrtajmo okvir oko grafika i dodajmo linije B2 i B3. box() lines(B2, pch = 16, type="o", lty=2, col="red") lines(B3, pch = 17, type="o", lty=3, col="darkgreen") # Kreirajmo naslov. title(main="Moj linijski grafik u R", col.main="red", font.main=2) # Označimo x i y ose. title(xlab=toupper("Slova"), col.lab="purple") title(ylab=tolower("Brojevi"), col.lab="brown") # Kreirajmo legendu na lokaciji (1, yosamax). legend(1, yosamax, c("B1","B2", "B3"), cex=0.7, col=c("blue", "red", "darkgreen"), pch=c(15, 16, 17), lty=1:3)
Menadžer u New Zealand Institute of Sport i Direktor Sigma Statistics and Research Ltd. Autor knige: R Graph Essentials.