Загрузить RData в Shiny - данные загружены в рабочее пространство R, но не в Shiny, ошибок нет

Цель: я стремлюсь загрузить набор данных (в .RData формат) я загрузил на GitHub к Shiny приложение, и использовать набор данных для различных целей построения.

Техника: я использую source_data функция от repmis пакет для загрузки данных в мой сеанс R. Эта загрузка происходит на global.R файл, так что я был уверен, что любые загруженные данные будут доступны для построения функций в server.R файл.

Проблема: я вижу, что данные загружаются в мое рабочее пространство R, если я перенесу все функции из global.R в server.R но как раз перед shinyServer() функция.
Тем не менее, данные не доступны для Shiny приложение, ошибка не возникает, просто ничего не доступно для построения, или даже проверить с помощью dim(),

Подобные вопросы: здесь есть похожий вопрос, но я не получил никакой помощи от этого - в любом случае, я загружаю данные в Global.R а не в server.R или же ui.R,
Другой вопрос здесь, но пользователь считывает данные в реактивный источник. Мои данные не будут меняться, поэтому я загружаю их в global.R файл.


Global.R

#global.R

#-------------------- Loading Libraries ------------------------#   

library(repmis)
library(lubridate)
library(dplyr)
library(xts)
library(dygraphs)




#-------------------- Loading required data from GitHub Repo -------------------------#

source_data('https://github.com/aliarsalankazmi/SHB_FB_App/raw/master/Data/shbPageData.RData')



#-------------------- Manipulating data for further processing -------------------------#

shb$created_date <- ymd(gsub('T.*', '', shb$created_time))

pageData <- tbl_df(shb) %>%
        arrange(created_date)

byDay <- pageData %>%
        group_by(created_date) %>%
        select(created_date, comments_count, likes_count, shares_count) %>%
        summarise(totalPosts = n(),
              totalLikes = sum(likes_count),
              totalComments = sum(comments_count),
              totalShares = sum(shares_count)) %>%
        arrange(created_date)

#-------------------- Manipulating data for an Overall View  -------------------------#

byDayxts <- as.xts(x = as.matrix(as.data.frame(byDay[,colnames(byDay) != 'created_date'])), order.by = byDay$created_date)

Server.R

#server.R

library(shiny)
library(dygraphs)


shinyServer(function(input, output, session) {


#---------------------- Plotting for a General Overview --------------------#

    totalOverview <- renderDygraph({
                byDayxts[, colnames(byDayxts) == 'totalPosts'] %>%
                dygraph(main = 'Total Posts per Day Since Beginning', group = 'overall') %>%
                dyAxis('x', drawGrid = FALSE) %>%
                dySeries('totalPosts', label = 'Total Posts') %>%
                dyOptions(includeZero = TRUE, gridLineColor = "lightblue", colors = '#d8b365') %>% 
                dyRangeSelector()
            })    
})

Ui.R

#ui.R

library(shiny)
library(dygraphs)

shinyUI(fluidPage(

    titlePanel(h1("Facebook Data Analysis")),
    tabsetPanel(
        tabPanel("Graphs",
                fluidRow(
                    column(width = 6, dygraphOutput("totalOverview"))
                    )
            )
        )
    )
)

1 ответ

Решение

Так должно быть:

output$totalOverview <- renderDygraph({ ... })

не:

totalOverview <- renderDygraph({ ... })
Другие вопросы по тегам