2015-05-29 93 views
1

我想运行一个闪亮的应用程序,包括rpivottable。rpivotTable闪亮的服务器不能正常工作

我的配置: devtools 1.8.0,0.4.2 htmlwidgets,rpivotTable 0.1.4.1,有光泽0.12.0

[R版本3.1.2(2014年10月31日)

的Ubuntu 14.04。 1 LTS

我的代码在本地完美工作,但在服务器上崩溃。在浏览器中,我得到的控制台上的错误:

类型错误:未定义X

并将其链接到该代码:

HTMLWidgets.widget({ 

    name: 'rpivotTable', 

    type: 'output', 

    initialize: function(el, width, height) { 

     return {} 

    }, 

    renderValue: function(el, x, instance) { 
     x.data = HTMLWidgets.dataframeToD3(x.data); 

     var derivers = $.pivotUtilities.derivers; 
     var tpl = $.pivotUtilities.aggregatorTemplates; 

     x.params.renderers = $.extend(
     $.pivotUtilities.renderers, 
     $.pivotUtilities.d3_renderers, 
     $.pivotUtilities.c3_renderers 
    ); 


     $('#'+el.id).pivotUI(
      x.data, x.params 
    ); 

    }, 

    resize: function(el, width, height, instance) { 

    } 

}); 

我的R代码里面如下:

if (interactive()) { lib.path <- my.path.local 
} else { lib.path <- my.path.server } 

### packages ### 
library(shiny, lib.loc = lib.path) 
library(htmlwidgets, lib.loc = lib.path) 
library(rpivotTable, lib.loc = lib.path) 

data <- data.frame(var1 = c("mod1", "mod2"), value = c(1, 2)) 

shinyApp(
    ui = fluidPage(
    sidebarLayout(
     sidebarPanel(
    textOutput("config"), textOutput("path"), textOutput("version")) 
    , mainPanel(
    rpivotTableOutput("test") 
    ) 
    )), 

    server = function(input, output) { 
     output$test <- rpivotTable::renderRpivotTable({ 
     rpivotTable(data = data) 
     }) 

    output$config <- renderText({ 
     tt <- installed.packages() 
    paste(paste(tt[tt[, 1] %in% c("shiny", "htmlwidgets", "rpivotTable", "devtools") , 1], 
       tt[tt[, 1] %in% c("shiny", "htmlwidgets", "rpivotTable", "devtools") , 3]), collapse = ", ") 
    }) 

    output$path <- renderText({ 
     ll <- .libPaths() 
     ll 
    }) 

    output$version <- renderText({ 
     ss <- sessionInfo() 
     ss[[1]]$version.string 
    }) 

    } 
) 

是否有人遇到此错误?

最好,

+0

我发现了问题: 这是最有可能是内存的问题。 我将我的AWS版本从t2.micro升级到了t2.small,并且工作正常。 – YCR

回答

0

该示例是功能性的。

更好地写着:

library(shiny) 
library(rpivotTable) 

data <- data.frame(var1 = c("mod1", "mod2"), value = c(1, 2)) 

shinyApp(
    ui = fluidPage(
    sidebarLayout(
     sidebarPanel(mainPanel(
    rpivotTableOutput("test") 
    ) 
    )), 

    server = function(input, output) { 
     output$test <- rpivotTable::renderRpivotTable({ 
     rpivotTable(data = data) 
     }) 

    } 
) 
-3

YCR:还没有评论,但你有一个闪亮+ rpivotTable的工作的例子可以分享?

其实 - 这是一个工作的例子。

感谢您的分享。