Grafika Csima Judit BME, VIK, Sz´ am´ıt´ astudom´ anyi ´ es Inform´ aci´ oelm´ eleti Tansz´ ek
2017. m´arcius 9. ´es 16.
Csima Judit
Grafika
1 / 18
Grafika ´ altal´ aban
Grafika az R-ben
Van n´eh´any alapvet˝o package az ´abr´azol´asra: graphics: ez az alap (base) grafikai csomag, legfontosabb f¨ uggv´enyek: plot, hist, boxplot lattice: Trellis t´ıpus´ u objektumokat lehet vele csin´alni, f¨ uggetlen a graphics csomagt´ol, m´as filoz´ ofia, f˝ o parancsok: xyplot, bwplot, levelplot ggplot2: ¨otv¨ozi a fenti k´et package el˝ onyeit, alapparancs: qplot ´es ggplot
Csima Judit
Grafika
2 / 18
Grafika ´ altal´ aban
Milyen grafika kell? F˝ o k¨ ul¨onbs´eg base ´es lattice k¨ oz¨ ott: base: apr´ank´ent rakjuk ¨ ossze, amit akarunk, k¨ ul¨ on parancsokkal ´all´ıtjuk be az ´abra param´etereit, az ´abra a k´eperny˝ore ker¨ ul, innen lementhet˝o k´epk´ent lattice: egy f¨ uggv´enyt ´ırunk, ami tartalmaz minden be´all´ıt´ast, amit szeretn´enk, az eredm´eny egy R objektum Mi alapj´an d¨ontj¨ uk el, hogy milyen ´abr´at csin´alunk ´es mivel? Csak egyszer akarunk r´an´ezni az ´abr´ara a k´eperny˝on vagy prezent´aci´oban ill. cikkben akarjuk haszn´alni? Sok adatunk van? Milyen t´ıpus´ uak? Melyiket szeretj¨ uk haszn´alni, milyen t´ıpus´ u ´abr´at akarunk
Csima Judit
Grafika
3 / 18
Base grafika
Base grafika alaptulajdons´agai
2D-s ´abr´ak lesznek bel˝ ole (az oprendszert˝ol f¨ ugg˝ o helyen) megjelen´ıti az ´abr´at a k´eperny˝on rstudioban a jobb als´ o sarokban u ´j ablakban f˝o parancsok plot(x,y) ´es hist(x,y)
Csima Judit
Grafika
4 / 18
Base grafika
Param´eterek a base grafik´aban
rengeteg param´eter, be´all´ıthat´ o az ´abra c´ıme, a tengelyek nevei, a marg´ok, stb. a param´eterek egy r´esze glob´alisan ´all´ıthat´ o be : minden ´abr´ara ´erv´enyes lesz ezut´an a glob´alis be´all´ıt´asok egy r´esze fel¨ ul´ırhat´ o az egyes plot h´ıv´asokb´ol vannak csak a plot-ban be´all´ıthat´ o param´eterek is
Csima Judit
Grafika
5 / 18
Base grafika
A base grafika param´eterei
A par f¨ uggv´ennyel lehet be´all´ıtani a glob´alis ´ert´ekeket, lok´alisan a plot f¨ uggv´eny belsej´eben adhatunk meg param´etereket A legfontosabb glob´alis param´eterek: pch: milyen szimb´olummal jel¨ olj¨ uk a pontokat az ´abr´an (default a karika) col: a pontok sz´ıne milyen legyen? (lehet sz´am, sz´ınn´ev, stb., a colors fv. megadja a lehet˝ os´egeket) las: a tengelyeken lev˝ o sz´amok milyen ir´any´ uak legyenek mar: a marg´o m´erete
Csima Judit
Grafika
6 / 18
Base grafika
M´eg param´eterek:
Glob´alisak: mfrow: h´any ´abr´at jelen´ıtsen megy soronk´ent, oszloponk´ent (soronk´enti felt¨olt´es) mfcol: h´any ´abr´at jelen´ıtsen megy soronk´ent, oszloponk´ent (oszloponk´enti felt¨olt´es) Lok´alis: xlab, ylab: a tengelyek nevei
Csima Judit
Grafika
7 / 18
Base grafika
Default ´ert´ekek lek´erdez´ese, help
help(par): milyen grafikus param´eterek vannak, milyen lehets´eges ´ert´ekekkel par(”param´eter neve”): ki´ırja a default ´ert´eket > par("pch") [1] 1 az ´abr´azol´o fvek (plot, hist), stb. help-jeib˝ ol
Csima Judit
Grafika
8 / 18
Base grafika
´ azol´o f¨uggv´enyek Abr´
plot, hist, boxplot: pont-diagramm, hisztogram ´es box-plot rajzol´asa text: adott helyre sz¨ oveget illeszt be az ´abr´aba pont-diagrammon title: ´abra c´ıme (ezt lehet a plot h´ıv´ason bel¨ ulr˝ol is a main param´eter be´all´ıt´as´aval) points: tov´abbi pontokat ad az ´abr´ahoz
Csima Judit
Grafika
9 / 18
Base grafika
Ki´ır´as m´as form´atumba
sokf´ele form´atumba lehet konvert´alni a kapott ´abr´at m´odszer: elk´esz´ıtj¨ uk az ´abr´at a k´eperny˝ ore m´as form´atumba konvert´aljuk
´atkonvert´al´as egyszer˝ uen: rstudioban Export as Image vagy as PDF vannak f¨ uggv´enyek az ´at´ır´asra pl. dev.copy2pdf help ehhez: ?Devices, ?dev.copy
Csima Judit
Grafika
10 / 18
Lattice grafika
Lattice grafika
nincs benne a base R-ben, le kell t¨ olteni hozz´a a lattice csomagot: library(lattice) m´ashogy m˝ uk¨odik, mint a base grafika: base grafika k¨ ozvetlen¨ ul a k´eperny˝ ore k´esz´ıtette el az ´abr´at, amit el lehetett menteni lattice grafika egy trellis t´ıpus´ u objektumot hoz l´etre, amit k¨ ul¨on paranccsal lehet megjelen´ıteni a k´eperny˝ on (kiv´eve a command line-os m´ od, mert akkor r¨ ogt¨ on kirakja k´eperny˝ ore) help: > package ?lattice
Csima Judit
Grafika
11 / 18
Lattice grafika
Alapvet˝o grafikai f¨uggv´enyek a lattice-ben
xyplot: pontdiagrammhoz bwplot: box-plothoz histogram: hisztogrammhoz vannak m´eg m´asok is, megn´ezhet˝ o ´ıgy: ?xyplot
Csima Judit
Grafika
12 / 18
Lattice grafika
Formula az els˝o argumentumban
Lattice f¨ uggv´enyek ´altal´aban y ∼ x | f * g t´ıpus´ u formul´at kapnak els˝o argumentumk´ent, ennek jelent´ese: a ∼ jelt˝ol balra az y tengely, jobbra az x tengely v´altoz´oja ´all a | jel ut´an ´all az a v´altoz´ o, ami (mint faktor) szerint sz´etv´agja az adatokat ´es k¨ ul¨on jelen´ıti meg az egyes ´abr´akat, egym´as mellett (ez a r´esz hi´anyozhat is) f*g azt jelenti, hogy k´et faktort is megadhatunk ´es akkor az ¨osszes lehets´eges kombin´aci´ojukra lesz egy-egy ´abra
Csima Judit
Grafika
13 / 18
Lattice grafika
Tov´abbi argumentumok be´all´ıt´asa, panel f¨uggv´eny
ha nincs f*g r´esz (egy ´abra k´esz¨ ul): hason´ oan, mint base-ben volt: xlab, ylab, main, pch, col stb. ha t¨obb ´abra k´esz¨ ul: panel f¨ uggv´ennyel: xyplot(y ∼ x | f, panel = function(x, y, ...) { panel.xyplot(x, y, ...) panel.lmline(x, y, col = 2) } )
Csima Judit
Grafika
14 / 18
Lattice grafika
ggplot2 ´altal´anos elvek
qplot() f¨ uggv´enyn´el egy csom´ o param´eter ´ert´eke be van ´all´ıtva, ezzel lehet ´abr´azolni de ha enn´el rafin´altabbat akarunk: ggplot() lehet apr´ank´ent ¨osszerakni az ´abr´at (mint base-n´el) k¨onnyen lehet vele egy factor szerint sz´etv´agott adathalmazr´ol sok kis ´abr´at egym´as mell´e k´esz´ıteni (mint lattice-n´al)
Csima Judit
Grafika
15 / 18
Lattice grafika
qplot()
olyan, mint plot volt legt¨obb dologr´ol maga gondoskodik (marg´ om´eret, bet˝ um´eret, tengelyek felirata, stb.) ha nem tetszik, amit csin´al, akkor ggplot() ezzel lehet pontdiagrammot ´es hisztogrammot is
Csima Judit
Grafika
16 / 18
Lattice grafika
qplot()
mindenk´epp meg kell mondani, hogy mi a k´et tengely v´altoz´oja ´es mi a data frame, ahonnan j¨ onnek ezut´an tov´abbi dolgok megadhat´ ok, pl. xlab, ylab, main, illetve aesthetics: pont sz´ıne, form´aja, m´erete geoms: pontok ¨ osszek¨ ot´ese, illeszt´esek
Csima Judit
Grafika
17 / 18
Lattice grafika
facets
ha egy faktor t´ıpus´ u v´altoz´ o szerint sz´etbontva akarjuk ugyanazt ´abr´azolni a k¨ ul¨onb¨oz˝o csoportokban hisztogrammra is m˝ uk¨ odik exploratory elemz´esn´el is hasznos
Csima Judit
Grafika
18 / 18