To tekst w Quarto. Uzupełnij go opisamie przed/po kodach

# Wizualizacja danych z pakietem **lattice**

::: {.callout-note icon="false" appearance="simple"}


Pakiet **lattice** dostępny w języku **R** to jeden z głównych systemów do tworzenia zaawansowanych wykresów opartych na tzw. "trellis graphics", czyli układzie wielu wykresów w siatce (grid), który pozwala na wygodne przedstawienie danych w podziale na grupy.

:::

## Zainstalowanie i wczytanie pakietu **lattice**

```{r}
#install.packages("lattice")
library(lattice) 
```

## Przekształcenie zbioru danych

```{r}
# Wykorzystany zostanie zbiór danych, który dostępny jest w R pod nazwą: airquality.
aq_data=airquality

# Przekształcenie zbioru danych poprzez zamianę kolumny Month na typu factor.
aq_data$Month=factor(aq_data$Month,
                     levels=c(5,6,7,8,9),
                     labels=c("maj","czerwiec","lipiec","sierpień","wrzesień"))
head(aq_data)
```

## Wykresy

### Jądrowy estymator gęstości

```{r}
#| label: fig-r01
#| fig-cap: Jądrowy estymator gęstości zmiennej Temp (maksymalna temperatura)
densityplot(~Temp,data=aq_data)
```

```{r}

#| label: fig-r02
#| fig-cap: Jądrowy estymator gęstości zmiennej Temp osobno dla każdego z miesięcy
densityplot(~Temp|Month, data=aq_data)
```

```{r}
# Funkcja layout pozwala na zmianę ustawienia poszczególnych małych wykresów na wykresie ogólnym.
densityplot(~Temp|Month, 
            data=aq_data, 
            layout=c(5,1))

# Dodanie do wykresu: opisu osi OX i tytułu wykresu (w tym zapisania go w dwóch liniach zamiast jednej).
densityplot(~Temp|Month, 
            data=aq_data, 
            layout=c(5,1),
            xlab="maksymalna odnotowana temperatura",
            main="Estymacja gęstości rozkładu \n maksymalnych temperatur w wybranych miesiącach")
```

### Wykres rozrzutu

```{r}
# Zestawienie średniego poziomu ozonu i przeciętnej prędkości wiatru w milach na godzinę.
xyplot(Ozone~Wind,data=aq_data)

# Osobne wykresy dla każdego z miesięcy.
xyplot(Ozone~Wind|Month,data=aq_data,layout=c(5,1))

# Wyselekcjonowanie danych dla miesięcy letnich (czerwiec-sierpień).
aq_data_new=aq_data[aq_data[,"Month"]=="czerwiec"|aq_data[,"Month"]=="lipiec"|aq_data[,"Month"]=="sierpień",]
aq_data_new$Month=factor(aq_data_new$Month,levels = c("czerwiec","lipiec","sierpień"),labels=c("czerwiec","lipiec","sierpień"))

# Wyróżnienie danych z poszczególnych miesięcy innym kolorem.
xyplot(Ozone~Wind,group=Month,data=aq_data_new,pch=19,col=c(2,3,4))

# Dodanie legendy.
xyplot(Ozone~Wind,group=Month,col=c(2,3,4),data=aq_data_new,
       pch=19,key=list(space="right",
       text = list(as.character(unique(aq_data_new$Month))),
                       points = list(pch = 19, col =2:4)))

```

### Macierzowy wykres rozrzutu

```{r}
splom(aq_data[,c("Ozone","Wind","Temp")])

```

### Wykres pudełkowy

```{r}
# Wykres pudełkowy przedstawiający poziom ozonu w wybranych miesiącach roku. 
# Dodanie opisów osi oraz zmniejszenie czcionki na osiach wykresu.
bwplot(Ozone~Month,data=aq_data,
       xlab="Miesiące",
       ylab="Poziom Ozonu",
       scales = list(cex=0.7))

# Dodanie koloru.
bwplot(Ozone~Month,data=aq_data,
       xlab="Miesiące",
       ylab="Poziom Ozonu",
       scales = list(cex=0.7),fill=rainbow(5))
```

### Wykres słupkowy

```{r}
# Wykorzystany zostanie wbudowany do R zbiór danycho nazwie: ChickWeight.
# Wykres zliczający ile pisklęć jest poddanych danej diecie.
barchart(ChickWeight$Diet,horizontal=F)
```

### Histogram

```{r}
# Wykorzystany zostanie wbudowany do R zbiór danych o nazwie: ChickWeight.
histogram(~weight,data=ChickWeight,
       type="count",
       xlab="Waga",
       main="Waga piskląt",
       col="pink")
```


::: callout-caution
## Ćwiczenia do samodzielnego wykonania

1. 

2. 

3.

4. 

5. 


:::