3курс 2сем / лабораторные / 3
.docxГУАП
КАФЕДРА № 41
ОТЧЕТ
ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
ассистент |
|
|
|
М. С. Иванова |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №3 |
ВИЗУАЛИЗАЦИЯ СРЕДСТВАМИ ЯЗЫКА ПРОГРАММИРОВАНИЯ R |
по курсу: БАЗЫ ДАННЫХ |
|
|
РАБОТУ ВЫПОЛНИЛА
СТУДЕНТКА ГР. |
4716 |
|
|
|
С.А. Янышева |
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург
2020
Лабораторная работа № 3
Визуализация средствами языка программирования r
Цель работы
Создать средствами языка R или любого другого языка программирования, например, Python или C++, визуализацию данных, хранящихся в базе данных интернет-приложения.
Выполнение работы
Был добавлен драйвер 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))
|
Выводы о проделанной работе
В данной лабораторной работе была создана визуализация данных средствами языка R, хранящаяся в базе данных сайта.