3.2: Використання R для візуалізації даних
- Page ID
- 17565
Однією з сильних сторін R є легкість, з якою ви можете побудувати дані та якість сюжетів, які ви можете створити. R має два попередньо встановлені графічні пакети: один - графічний
пакет, який доступний для вас під час запуску R, а другий - пакет решітки
, який ви можете ввести у свій сеанс, запустивши бібліотеку (решітку)
в консолі - і є багато додаткових графічних зображень. пакети, такі як ggplot2
, розроблені іншими. Оскільки наш інтерес до цього підручника робить R швидко і легко доступним, ми будемо покладатися на базову графіку R. Список інших графічних пакетів можна знайти у розділі Ресурси цього розділу.
У цьому розділі використовуються дані M&M, наведені в таблиці 1 глави 3.1. Ви можете завантажити копію даних у вигляді таблиці.csv за цим посиланням і зберегти її в робочому каталозі.
Введення ваших даних в R
Перш ніж ми зможемо створити візуалізацію, нам потрібно зробити наші дані доступними для R. Код нижче використовує функцію read.csv ()
для читання у файлі MandM.csv
як кадр даних з ім'ям mm_data
. Текст "MandM.csv"
передбачає, що файл знаходиться у вашій робочій директорії.
мм_даних = read.csv (» MandM.csv «)
Створення точкового графіка за допомогою R
Для створення точкового графіка в R ми використовуємо функцію dotchart (x,...)
де х
об'єкт, який містить наші дані, як правило, вектор або один стовпець з кадру даних, і...
список необов'язкових аргументів, які впливають на те, що ми бачимо. У наведеному нижче прикладі pch
встановлює символ побудови (19 - суцільне коло), col
- колір, призначений символу побудови графіка, мітки
ідентифікують зразки за назвою вздовж осі y, xlab
призначає мітку до осі x, ylab
призначає мітку осі y, а cex
контролює розмір міток і точок. Дивіться останній розділ цієї глави для більш загального вступу до створення та відображення графіків за допомогою базової графіки R.
dotchart (mm_data$ коричневий, pch = 19, col = «коричневий», етикетки = mm_data$ мішок, xlab = «кількість коричневих M & Ms», ylab = «ідентифікатор мішка», cex = 0,5)
Створення Stripchart за допомогою R
Для створення stripchart в R ми використовуємо функцію stripchart (x,...)
де х
об'єкт, який містить наші дані, як правило, вектор або стовпець з кадру даних, і...
список необов'язкових аргументів, які впливають на те, що ми бачимо. У наведеному нижче прикладі pch
встановлює символ побудови (19 - суцільне коло), col
- колір, призначений символу побудови графіка, метод
визначає, як точки з однаковим значенням для x відображаються на осі y, в цьому випадку укладаючи їх один вище інший на величину, визначену зміщенням
, а cex
контролює розмір окремих точок даних.
stripchart (mm_data$ коричневий, pch = 19, col = «коричневий», метод = «стек», зміщення = 0.5, cex = 0,6, xlab = «кількість коричневих M & Ms»)
Оскільки stripchart не використовує вісь y для надання інформації, ми можемо легко відобразити кілька stripcharts одночасно, як показано в наступному прикладі, де ми використовуємо mm
_data [3:8]
для ідентифікації даних для кожної stripchart і col
для присвоєння кольору кожному смужкова діаграма. Замість того, щоб укладати окремі точки, вони тремтяться, застосовуючи невелике випадкове зміщення до кожної точки за допомогою тремтіння
. Параметр las
змушує мітки відображатися горизонтально (las = 0
вирівнює мітки паралельно осі, las = 1
вирівнює мітки по горизонталі, las = 2
вирівнює мітки перпендикулярно осі, а las = 4
вирівнює мітки вертикально).
stripchart (mm_data [3:8], pch = 19, cex = 0.5, xlab = «кількість M & MS», col = c («синій», «коричневий», «зелений», «помаранчевий», «червоний», «жовтий»), метод = «тремтіння», тремтіння = 0.2, лас = 1)
Створення ділянки «Коробка-вуса» за допомогою R
Для створення графіка коробки та вуса в R ми використовуємо функцію boxplot (x,...)
де х
об'єкт, який містить наші дані, як правило, вектор або стовпець з кадру даних, і...
список необов'язкових аргументів, які впливають на те, що ми бачимо. У наведеному нижче прикладі параметр horizontal = TRUE
перевизначає значення за замовчуванням, яке має відображати вертикальний квадратний графік, а діапазон
визначає довжину вуса як кратну IQR. У цьому прикладі ми також показуємо окремі значення за допомогою stripchart ()
з опцією add = TRUE
для накладення stripchart на boxplot.
boxplot (mm_data$ коричневий, горизонтальний = ІСТИНА, діапазон = 1,5, xlab = «кількість коричневих M & Ms»)
stripchart (mm_data$ коричневий, метод = «тремтіння», тремтіння = 0,2, додати = TRUE, col = «коричневий», pch = 19)
Оскільки графік коробки та вусів не використовує вісь y для надання інформації, ми можемо легко відобразити кілька графіків одночасно, як показано у наступному прикладі, де ми використовуємо mm_data [3:8]
для ідентифікації даних для кожного графіка та col
для присвоєння кольору кожному графіку.
boxplot (mm_data [3:8], xlab = «кількість M & MS», las = 1, горизонтальний = TRUE, col = c («синій», «коричневий», «зелений», «помаранчевий», «червоний», «жовтий»))
У наведеному нижче прикладі код mm_data$yellow ~ mm_data$store
- це формула, яка приймає загальну форму y як функцію x; в цьому випадку вона використовує дані в стовпці з назвою store
для поділу даних на три групи. Параметр outline = FALSE
у функції boxplot ()
пригнічує функцію за замовчуванням для побудови відкритого кола для кожного зразка, який лежить поза вусами; роблячи це, ми уникаємо побудови цих точок двічі.
boxplot (mm_data$ жовтий ~ mm_data$ магазин, горизонтальний = ІСТИНА, лас = 1, col = «жовтий», контур = FALSE, xlab = «кількість жовтих M & Ms»)
stripchart (mm_data$ жовтий ~ mm_data$ магазин, додати = TRUE, PCH = 19, метод = «тремтіння», тремтіння = 0.2)
Див. Розділ 8.5 для обговорення використання формул в R.
Створення штрихового графіка за допомогою R
Для створення штрихового графіка в R ми використовуємо функцію barplot (x,...)
де х
об'єкт, який містить наші дані, як правило, вектор або стовпець з кадру даних і...
список необов'язкових аргументів, які впливають на те, що ми бачимо. На відміну від попередніх сюжетів, ми не можемо передати barplot ()
наші вихідні дані, які складаються з кількості помаранчевих M & Ms у кожному мішку. Натомість ми маємо надати дані у вигляді таблиці, яка містить кількість мішків, що містять 0, 1, 2,.., до максимальної кількості помаранчевих M&Ms у будь-якій сумці; ми виконуємо це за допомогою функції tabulate ()
. Оскільки tabulate ()
підраховує лише частоту натуральних чисел, програма ігнорує будь-які мішки, у яких немає помаранчевого M&Ms; додавання по одному до кожного підрахунку за допомогою mm_data$orange + 1
гарантує, що вони будуть підраховані. Аргумент names.arg
дозволяє надати категоричні мітки для осі х (і виправити на те, що ми збільшили кожен індекс на 1).
orange_table = табличний (mm_data$ помаранчевий + 1)
barplot (orange_table, col = «помаранчевий», ім'я.arg = seq (0, max (mm_data$ помаранчевий), 1), xlab = «кількість помаранчевих M & Ms», ylab = «кількість мішків»)
Створення гістограми за допомогою R
Для створення гістограми в R ми використовуємо функцію hist (x,...)
де х
об'єкт, який містить наші дані, як правило, вектор або стовпець з кадру даних, і...
список необов'язкових аргументів, які впливають на те, що ми бачимо. У наведеному нижче прикладі опція main = NULL
пригнічує розміщення заголовка над графіком, який в іншому випадку включений за замовчуванням. Параметр правий = TRUE
означає, що найправіше значення bin включено в цей бін. Нарешті, хоча гістограма показує, як розподіляються окремі значення, вона не показує самі окремі значення. Функція килимка (x)
додає галочки вздовж осі x, які показують кожне окреме значення.
hist (mm_data$net_weight, col = «світло-блакитний», xlab = «вага нетто M & Ms (oz)», право = ІСТИНА, основний = NULL)
килимок (мм_дана$ нетто_вага, lwd = 1,5)
За замовчуванням R використовує алгоритм для визначення того, як встановити розмір бункерів. Як показано в наступному прикладі, ми можемо використовувати параметр breaks
, щоб вказати значення x, де один бін закінчується, а наступний бін починається.
hist (mm_data$net_weight, col = «світло-блакитний», xlab = «вага нетто M & Ms (oz)», перерви = seq (46, 52, 0,5), право = ІСТИНА, основний = NULL)
килимок (мм_дана$ нетто_вага, lwd = 1,5)