R Markdown

library(tidyverse)
## Warning: пакет 'tidyverse' был собран под R версии 4.5.3
## Warning: пакет 'ggplot2' был собран под R версии 4.5.3
## Warning: пакет 'tidyr' был собран под R версии 4.5.3
## Warning: пакет 'readr' был собран под R версии 4.5.3
## Warning: пакет 'purrr' был собран под R версии 4.5.3
## Warning: пакет 'stringr' был собран под R версии 4.5.3
## Warning: пакет 'forcats' был собран под R версии 4.5.3
## Warning: пакет 'lubridate' был собран под R версии 4.5.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.2.0
## ✔ forcats   1.0.1     ✔ stringr   1.6.0
## ✔ ggplot2   4.0.2     ✔ tibble    3.3.1
## ✔ lubridate 1.9.5     ✔ tidyr     1.3.2
## ✔ purrr     1.2.1     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors

Самостоятельное задание

#1. Что не так с этим кодом? (попробуйте запустить, посмотреть и разобраться и в ячейке внизу написать правильный код)

ggplot(data = mpg) +   geom_point(mapping = aes(x = displ, y = hwy, color = "blue"))

Внутри aes() аргументу color присваивается строка “blue”, а не имя переменной, это делается вне aes(). Вот правильный код

ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy), color = "blue")

#2. Какие переменные в наборе mpg являются категориальными, а какие непрерывными?

Категориальные: manufacturer, model, year, cyl, trans, drv, fl, class. Непрерывные: displ, cty, hwy.

#3. Выберите одну из количественных переменных и включите ее в в код в качестве аргумента color, size или shape. Посмотрите, как различается представление категориальных и количественных переменных? В каком случае возникает ошибка? Почему?

Возьмём количественную переменную cty и включим её в качестве color:

ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy, color = cty))

Для непрерывной переменной создаётся непрерывная цветовая шкала.

Ошибка возникает, если использовать shape = cty, потому что непрерывная переменная не может быть сопоставлена с эстетикой формы.

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy, shape = cty))

#4. Что произойдет, если одну и ту же переменную, например, drv, назначить в качестве аргумента в разных настройках (например, и в качестве shape и в качестве color)? Измените исходный код графика и запишите его ниже.

ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy, color = drv, shape = drv))

Точки будут различаться и по цвету, и по форме.

#5. В функции geom_point есть еще несколько аргументов в функции aes(), например - stroke, fill и group. Посмотрите, примеры кода для построения графиков с такими аргументами и приведите один из примеров ниже.

ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy, fill = drv, stroke = 1.5), 
             shape = 21, size = 4)

#6. Что произойдет, если вместо имены переменной указать что-то другое, наприме, aes(colour = displ < 5)? Попробуйте измеить код и вставить ниже.

ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy, colour = displ < 5))

Функция интерпретируется как категориальная переменная с двумя категориями, окрашивание точек в соотвествии с категориями

Самостоятельная работа #1. Какой geom нужно использовать, чтобы нарисовать линейный график? А боксплот? А гистограмму? А диаграмму с областями (area chart)? Создайте такие графики для переменных набора mpg, mtcars или diamonds.

ggplot(data = mtcars, aes(x = wt, y = mpg)) +
  geom_line() +
  labs(title = "Линейный график зависимости расхода топлива от веса",
       x = "Вес (1000 lbs)", y = "Расход (миль/галлон)")

ggplot(data = mtcars, aes(x = factor(cyl), y = hp)) +
  geom_boxplot() +
  labs(title = "Боксплот количества цилиндров по мощности двигателя",
       x = "количество цилиндров", y = "мощность двигателя (в лошадиных силах)")

ggplot(data = mtcars, aes(x = mpg)) +
  geom_histogram(binwidth = 5, fill = "green", color = "white") +
  labs(title = "Гистограмма распределения расхода топлива",
       x = "Расход (миль/галлон)", y = "Частота")

ggplot(data = mtcars, aes(x = qsec, y = mpg)) +
  geom_area(fill = "grey", alpha = 0.5) +
  geom_line(color = "yellow") +
  labs(title = "расход топлива и время разгона",
       x = "Время разгона 1/4 мили (сек)", y = "Расход (миль/галлон)")

#2. Постройте вот такие графики:

№1

## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'

№2

## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'

#3. Постройте перевернутый барчарт по одной из категориальных переменных набора данных diamonds

#4.

bar + coord_polar()