dr.sc. Luka Šikić
28 listopad, 2019
Prilagodba karte izbijanja kolere Johna Snow-a. Male točke označavaju incidenciju kolere, a velike lokaciju bundara. Najveći broj incidencija se dogodio na Broad St bunaru. Prikaz koristi podatke iz paketa HistData.
graphics)grid, lattice, ggplot_2)# Prilagodi grafikon
plot( x = Fibonacci,
main = "Naslov grafikona",
sub = "Titlovi grafikona",
xlab = "Naziv x-osi",
ylab = "Naziv y-osi"
)plot( x = Fibonacci, # Podatkovni skup
main = "Prvih sedam Fibonacci brojeva", # Naslov
xlab = "Pozicija u sekvenci", # x-os
ylab = "Fibonacci broj", # y-os
font.main = 1,
cex.main = 1,
font.axis = 2,
col.lab = "gray50" )type) grafikona.# Vektor argumenata ( `type()`) za izradu različitih vrsta grafikona
tp <- c("p","o","h","l","b","s")
Fibonacci <- c( 1,1,2,3,5,8,13 ) # Stvori Fibonacci niz
# Definiraj "platno"za prikaz grafikona
par(mfrow=c(2,3), mar=c(1,1,2,1), mai=c(0.2,0.1,0.3,0.1))
# Funkcija za izradu više grafikona
for(i in tp){
plot(Fibonacci, # Podatci
type = i, # Vrsta
col=4, lwd=2, # Estetika
main = paste0("type = '",i,"'"), # Naslov
axes = FALSE, # Osi
frame.plot = TRUE, # Okvir
xlab = "", # x-os naziv
ylab="") # y-os naziv
}# Dodatne prilagodbe na grafikonu
plot( x = Fibonacci, # Podatci
type = "b", # Vrsta grafikona
col = "blue", # Boja
pch = 19, # Veličina
cex = 5, # Estetika
lty = 2, # Vrsta linije
lwd = 4 ) # Estetika plot( x = Fibonacci, # Podatci
xaxt = "n", # Bez x-osi
bty = "]", # Estetika
las = 1 ) # Okreni teksthist( x = afl.margins,
main = "2010 AFL bodovi", # Naslov
xlab = "Margin", # Naziv x-osi
density = 10, # Zatamni
angle = 40, # Kut zatamljenja
border = "gray20", # Boja okvira
col = "gray80", # Boja zatamnjenja
labels = TRUE, # Dodaj frekvencije na nazive
ylim = c(0,40) # Raspon y-osi
)## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.00 12.75 30.50 35.30 50.50 116.00
load( "aflsmall.Rdata") # Učitaj podatke
boxplot( x = afl.margins, # Podatci
xlab = "AFL utakmice, 2010", # Naziv x-osi
ylab = "Pobjednički bodovi", # Naziv y-osi
border = "grey50", # Ublaži granice
frame.plot = FALSE, # Bez okvira
staplewex = 0, # Estetika
whisklty = 1 # Prilagodba za whisker
)library(lsr) # Učitaj paket
rm(list = ls()) # Očisti radni prostor
load(file.path("./aflsmall2.Rdata")) # Učitaj podatke
who( TRUE ) # Prvi pregled učitanih objekata## -- Name -- -- Class -- -- Size --
## afl2 data.frame 4296 x 2
## $margin numeric 4296
## $year numeric 4296
## margin year
## 1 33 1987
## 2 59 1987
## 3 45 1987
## 4 91 1987
## 5 39 1987
## 6 1 1987
boxplot( formula = margin ~ year, # the formula
data = afl2, # the data set
xlab = "AFL season", # x axis label
ylab = "Winning Margin", # y axis label
frame.plot = FALSE, # don't draw a frame
staplewex = 0, # don't draw staples
staplecol = "white", # (fixes a tiny display issue)
boxwex = .75, # narrow the boxes slightly
boxfill = "grey80", # lightly shade the boxes
whisklty = 1, # solid line for whiskers
whiskcol = "grey70", # dim the whiskers
boxcol = "grey70", # dim the box borders
outcol = "grey70", # dim the outliers
outpch = 20, # outliers as solid dots
outcex = .5, # shrink the outliers
medlty = "blank", # no line for the medians
medpch = 20, # instead, draw solid dots
medlwd = 1.5 # make them larger
)load(file.path("parenthood.Rdata")) # Učitaj podatke
plot( x = parenthood$dan.sleep, # Podatci za x-os
y = parenthood$dan.grump # Podatci za y-os
) plot( x = parenthood$dan.sleep, # Podatci za x-os
y = parenthood$dan.grump, # Podatci za y-os
xlab = "Sati spavanja/roditelj", # Naziv x-osi
ylab = "Raspoloženje (0-100)", # Naziv y-osi
xlim = c(0,12), # Razmjer x-osi
ylim = c(0,100), # Razmjer y-osi
pch = 20, # Prilagodi veličinu točki
col = "gray50", # Prilagodi boju
frame.plot = FALSE # Makni okvir
)
# Dodaj liniju
lines( x = c(4,9.5), # Horizontalne točke
y = c(93,37), # Vertikalne točke
lwd = 2 # Širina linije
)## Loading required package: carData
# Koristi funkciju `scatterplot()`
scatterplot( dan.grump ~ dan.sleep, # Definiraj varijable
data = parenthood, # Podatci
smooth = FALSE # Bez (fitted) linije
)# Napravi dijagram rasipanja za više od dvije varijable
cor( x = parenthood ) # Korelacijska matrica## dan.sleep baby.sleep dan.grump day
## dan.sleep 1.00000000 0.62794934 -0.90338404 -0.09840768
## baby.sleep 0.62794934 1.00000000 -0.56596373 -0.01043394
## dan.grump -0.90338404 -0.56596373 1.00000000 0.07647926
## day -0.09840768 -0.01043394 0.07647926 1.00000000
# Drugi način izrade dijagrama rasipanja
# Napravi dijagram rasipanja za više od dvije varijable
pairs( formula = ~ dan.sleep + baby.sleep + dan.grump, # Definiraj varijable
data = parenthood # Podatci
)load(file.path("./aflsmall.Rdata")) # Učitaj podatke
freq <- tabulate( afl.finalists ) # Tabuliraj podatke
print( freq ) # Pregled podataka## [1] 26 25 26 28 32 0 6 39 27 28 28 17 6 24 26 38 24
# Dodavanje naziva stupcima
teams <- levels( afl.finalists ) # Stvori razine(nazive)
print( teams ) # Pregled podataka## [1] "Adelaide" "Brisbane" "Carlton"
## [4] "Collingwood" "Essendon" "Fitzroy"
## [7] "Fremantle" "Geelong" "Hawthorn"
## [10] "Melbourne" "North Melbourne" "Port Adelaide"
## [13] "Richmond" "St Kilda" "Sydney"
## [16] "West Coast" "Western Bulldogs"
# Prilagodbe na grafikonu
barplot(height = freq, # Izaberi podatke
names.arg = teams, # Dodaj nazive
las = 2) # Zakreni nazive# Još prilagodbi
old <- par( no.readonly=TRUE ) # Prilagodba
par( mar = c( 10.1, 4.1, 4.1, 2.1) ) # Prilagodba
# Dodatne prilagodbe
barplot( height = freq, # Izaberi podatke
names.arg = teams, # Dodaj nazive
las=2, # Zakreni nazive
ylab = "Broj finalnih utakmica", # Naziv y-osi
main = "Finlne utakmice, 1987-2010", # Naslov grafikona
density = 10, # Gustoća zasjenjenja
angle = 20) # Kut