-
Notifications
You must be signed in to change notification settings - Fork 1
1.5.5.2 Wykresy liniowe
Pakiet MLAK udostępnia funkcje ułatwiające rysowanie wykresów liniowych:
wykresLiniowy(dane, tytuł, nMin = minimalnaLiczebność)
wykresLiniowy(dane, tytuł, tytułOsiX, tytułOsiY, nMin = minimalnaLiczebność)
Funkcje te przyjmują dane w postaci zagregowanej do tabeli (w R powiedzielibyśmy ramki danych) w formacie (kolejność kolumn jest dowolna):
seria | x | y | n |
---|---|---|---|
etykieta serii 1 | 0 | 2 | 10 |
etykieta serii 1 | 1 | 3 | 15 |
... | ... | ... | ... |
Jak widać każdy wiersz danych opisuje położenie pojedynczego punktu (wierzchołka linii) na wykresie, wraz z jego przyporządkowaniem do serii danych oraz liczebnością.
Uwaga! Liczebności odgrywaj ważną rolę przy rysowaniu wykresu - patrz opis parametru nMin poniżej.
Uwaga! Instrukcje, jak zagregować dane zawiera rozdział 1.5.8.
Parametr nMin decyduje o tym, które punkty na wykresie będą prezentowane. Wszystkie punkty, dla których wartość zmiennej n jest mniejsza od nMin zostaną pominięte.
- Jeśli pomijane są punkty skrajne, na wykresie nie pojawią się ani wartości punktów, ani linia przechodząca przez odpowiadające im wartości na osi X.
- Jeśli pomijane są punkty, które zarówno po lewej, jak i po prawej stronie mają w danej serii danych sąsiadów o liczebności większej lub równej nMin, wtedy pominięte punkty nie zostaną narysowane, ale na wykresie pojawi się linia prosta łącząca niepominiętych sąsiadów (patrz przykład).
Utwórzymy dane, jak poniżej i narysujmy dwa wykresy liniowe z różnymi wartościami parametru nMin.
seria | x | y | n |
---|---|---|---|
seria 1 | 1 | 1 | 50 |
seria 1 | 2 | 2 | 30 |
seria 1 | 3 | 2 | 30 |
seria 1 | 4 | 1 | 50 |
seria 2 | 1 | 4 | 30 |
seria 2 | 2 | 3 | 50 |
seria 2 | 3 | 1 | 50 |
seria 2 | 4 | 1 | 30 |
```{r, fig.height = 3}
dane = data.frame(
seria = c('seria 1', 'seria 1', 'seria 1', 'seria 1', 'seria 2', 'seria 2', 'seria 2', 'seria 2'),
x = c(1, 2, 3, 4, 1, 2, 3, 4),
y = c(1, 2, 2, 1, 4, 3, 1, 1),
n = c(50, 30, 30, 50, 30, 50, 50, 30)
)
wykresLiniowy(dane, 'bez pomijania', nMin = 30)
wykresLiniowy(dane, 'z pomijaniem', nMin = 40)
```