Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
8
Добавлен:
16.04.2021
Размер:
492.97 Кб
Скачать

ГУАП

КАФЕДРА № 41

ОТЧЕТ

ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

ассистент

М. С. Иванова

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №3

ВИЗУАЛИЗАЦИЯ СРЕДСТВАМИ ЯЗЫКА ПРОГРАММИРОВАНИЯ R

по курсу: БАЗЫ ДАННЫХ

РАБОТУ ВЫПОЛНИЛА

СТУДЕНТКА ГР.

4716

С.А. Янышева

подпись, дата

инициалы, фамилия

Санкт-Петербург

2020

Лабораторная работа № 3

Визуализация средствами языка программирования r

  1. Цель работы

Создать средствами языка R или любого другого языка программирования, например, Python или C++, визуализацию данных, хранящихся в базе данных интернет-приложения.

  1. Выполнение работы

Был добавлен драйвер ODBC, результат продемонстрирован на рисунке 1.

Рисунок 1 – Настройка DSN

Была подключена база данных сайта WordPress к R и создана столбчатая гистограмма (рисунок 2) со статусом постов и их количеством, также была построена круговая диаграмма (рисунок 3) с количеством опубликованных записей по категориям в процентах.

Рисунок 2 – Столбчатая гистограмма

Рисунок 3 – Круговая диаграмма

Листинг столбчатой гистограммы

library (RMySQL)

library (ggplot2)

library (plotly)

con <- dbConnect(RMariaDB::MariaDB(),user='root',password='',dbname='BdLab2',host='127.0.0.1')

res <-dbSendQuery (con, "SELECT * FROM wp_posts")

stat <-dbFetch(res)

tbl <- as.data.frame(table(stat$post_status))

p <- ggplot(tbl, aes(x=Var1, y=Freq, fill=Var1))+geom_bar(stat="identity") +ylab("Количество постов") +xlab("Статус поста")+ggtitle("Количество постов") +theme_bw()+theme(legend.position="none")

p

ggplotly(p)

Листинг круговой диаграммы

library(RMariaDB)

library(ggplot2)

library(plotly)

con <- dbConnect(RMariaDB::MariaDB(),user = 'root', password = '', dbname = 'BdLab2', host = '127.0.0.1')

res <- dbSendQuery(con, "SELECT * FROM wp_terms")

stat <- dbFetch(res)

tbl <- stat[c(1,2,3,4,5),]

res <- dbSendQuery(con, "SELECT * FROM wp_term_relationships")

stat2 <- dbFetch(res)

tbl2 <- as.data.frame(table(stat2$term_taxonomy_id))

tbl2 <- as.data.frame(tbl2[c(1,2,3,4,5),])

p <- plot_ly(tbl2, labels = ~tbl$name, values = ~tbl2$Freq,

type = 'pie',

textposition = 'inside',

textinfo = 'label+percent',

insidetextfont = list(color = '#FFFFFF')) %>%

layout(title = 'Количество опубликованных записей по категориям',

xaxis = list(showgrid = FALSE, zeroline = FALSE,

showticklabels = FALSE),

yaxis = list(showgrid = FALSE, zeroline = FALSE,

showticklabels = FALSE))

  1. Выводы о проделанной работе

В данной лабораторной работе была создана визуализация данных средствами языка R, хранящаяся в базе данных сайта.

Соседние файлы в папке лабораторные