Funkcje graficzne zawarte w podstawowym systemie graficznym R to:
plot- podstawowa funkcja tworząca wykresy punktowe i liniowecurve- funkcja tworząca krzywą daną przez wzórhist- funkcja tworząca histogramboxplot- wykres pudełkowybarplot- wykres słupkowyPodstawowa funkcja tworząca wykres w R. Wymagane są dwa argumenty, wektory współrzędnych punktów, które mają należeć do wykresu (możliwe jest wywołanie funkcji z jednym argumentem i wtedy są wartości wektora brane jako współrzędna y, a współrzędną x są kolejne liczby naturalne).
Po wywołaniu funkcji plot, z innymi parametrami domyślnymi, dostajemy wykres, który może być użyty jedynie jako wersja robocza, do własnego użytku.
#wykres mpg od disp z danych mtcars
plot(mtcars$disp, mtcars$mpg)
Funkcja plot() posiada bardzo wiele argumentów, pozwalających kontrolować najmniejsze detale obrazu. Najczęściej wystarczy wpisać początek argumentu, np. zamiast type='l', wystarczy t='l'. Najczęściej używane to:
type- typ wykresu
"p"- punktowy (dpomyślny)"l"- liniowy (łączy punkty tworząc łamaną)"b"- liniowy z punktami"s" i "S"- dwa rodzaje schodkowych"n"- pustypch- typ punktów
1- okręgi (domyślny)2- puste trójkąty25"$"- znak dolara, analogicznie każdy inny znaklty- typ linicol- kolor, dopuszcza nazwy oraz liczby np.
"red"- dostaniemy czerowny2- dostaniemy czerownymain- tytuł głównysub- podtytułxlab i ylab- opis osiWiększość argumentóW dla hist() jest takich samych jak dla plot(), najważniejszym dodatkowym argumentem jest breaks, dzięki, któremu możemy kontrolować przedziały dla histogramu. Domyślna wartość jest przeważnie odpowiednia (zależna od ilości obserwacji). Argument breaks może być:
set.seed(1)
#tworzymy hitogram dla danych wylosowanych z rozkładu wykładniczego
x.exp<-rexp(100,1)
hist(x.exp, breaks=15, col=3)
Większość argumentóW dla boxplot() jest identyczna z argumentami plot(). Najciekawszą opcją jest zastosowanie funkcji do formułu, anie do danych w postaci wektora. Dzięki temu dostajemy kilka wykresów pudełkowych, z podziałem na wartości zmiennej. Wpisując formula= x~y dostajemy tyle wykresóW ile poziomów zmiennej y, każdy stworzony z odpowiedniego podzbioru x.
#wykres zmiennej mpg w zależności od typu skrzyni biegów (am) w danych mtcars
boxplot(mtcars$mpg~mtcars$am)
Funkcja par() służy do globalnych ustawień w wykresach. Np. jeśli chcemy aby domyślnie każdy wykres miał szare tło wpisujemy w konsole par(bg="grey"). Jest bardzo dużo argumentóW funkcji par, zachęcam do zapoznania się z helpem. Wiele z tych argumentóW może być wpisywane jako argument pojedynczej funkcji, np. bg i wtedy dany parametr jest ustawiony dla konkretnego wykresu, ale każdy następny nie będzie miał tego argumentu domyślnie ustawionego.
Szczególnie ciekawymy argumentami funkcji par() są mfrow i mfcol ustawiające macierz wykresów, pozwalając na kilka wykresów na jednej grafice.
#rysujemy histogramy dla danych z rozkładu t, o różnej ilosci stopni swobody
par(mfrow=c(2,2))
set.seed(11)
for (i in 1:4) {
hist(rt(100,i^2), main=paste("df=", as.character(i^2)),
xlab=", ylab=", col=i+1)
}
#wracamy do jednego wykresu na grafikę
par(mfrow=c(1,1))
Wiele razy spotykamy się z sytuacją, w której chcemy do wykresu dodać jakiś element. Najczęściej używane funkcje w tym celu to:
points()- działa analogicznie do plot(), tylko dopisuje wykres do już istniejącego. Należy szczególnie uważać na zakresy xlim i ylim, aby wykres zawierał wszystkie lementy, które chcemy, ponieważ jeżeli część wykresu z points() nei mieści się w wykresie, nie zostaniemy o tym poinformowani.lines()- podrodzaj points() z argumentem t="l". Można otrzymać przy użyciu points()abline()- dokłada linię prostą idącą przez cały wykres. Możemy użyć na kilka sposobów, np. dla lini poziomej na wysokości 1 określamy h= 1, dla pionowej v=1.text()- dokłada tekst na wykresie (np. nazwa szczególnego punktu)polygon()- cieniuje obszar na wykresieaxis()- dołącza oś do wykresu, szczególnie przydatne przy wcześniejszym oznaczeniu osi jako pustych