2016-05-11 34 views
0

ちょうど新しいShinyで、光沢があります。私はプロットを持っていますが、プロットは光沢がありません。そして何のメッセージがコードですerror.thisない...shiny - renderUIのプロットが光沢で表示されない

UI

library(shiny) 
ui = fluidPage(
    titlePanel("Hello Shiny!"), 
    sidebarLayout(
    sidebarPanel(

    ), 
    mainPanel(

    uiOutput("scatter") 

       )) 
) 

サーバー

library(shiny) 

server = function(input, output) { 

    output$scatter <- renderUI({ 
    datax <- matrix(c(1,2,3,4,5,6),6,1) 
    datay <- matrix(c(1,7,6,4,5,3),6,1) 
    titleplot<-"title" 
    summary <- "testing text" 

    pl <- plot(datax, datay, main = titleplot, xlab = "input$axis1", ylab = "input$axis2", pch=18, col="blue") 

    list(
    pl, 
    summary 
    ) 


    }) 

} 

答えて

1
は相応 uiplotOutputuiOutputながら renderPlotserverであなたの renderUI機能を変更

library(shiny) 
ui = fluidPage(
    titlePanel("Hello Shiny!"), 
    sidebarLayout(
     sidebarPanel(

     ), 
     mainPanel(

      plotOutput("scatter") 

     )) 
) 

server = function(input, output) { 

    output$scatter <- renderPlot({ 
     datax <- matrix(c(1,2,3,4,5,6),6,1) 
     datay <- matrix(c(1,7,6,4,5,3),6,1) 
     titleplot<-"title" 
     summary <- "testing text" 

     pl <- plot(datax, datay, main = titleplot, xlab = "input$axis1", ylab = "input$axis2", pch=18, col="blue") 

     list(
      pl, 
      summary 
     ) 


    }) 

} 

shinyApp(ui, server) 
+0

「テストテキスト」が表示されず、 – lukman

0

プロットとテキストに別々のoutputスロットを割り当てる必要があります。これは、shinyがtoseレンダリング関数のそれぞれに異なる(css)クラスを使用するためです。次のコードは、あなたが望むことをする必要があります。

library(shiny) 

ui <- fluidPage(
    titlePanel("Hello Shiny!"), 
    sidebarLayout(
    sidebarPanel(), 
    mainPanel(
     plotOutput("scatter"), 
     textOutput("testingText") 
    ) 
) 
) 

server <- function(input, output) { 
    output$scatter <- renderPlot({ 
    datax <- matrix(c(1, 2, 3, 4, 5, 6), 6, 1) 
    datay <- matrix(c(1, 7, 6, 4, 5, 3), 6, 1) 
    titleplot <- "title" 
    plot(datax, datay, main = titleplot, xlab = "input$axis1", 
     ylab = "input$axis2", pch = 18, col = "blue") 
    }) 

    output$testingText <- renderText({ 
    "testing text" 
    }) 
} 

shinyApp(ui, server) 

追加ノート:ライン

pl <- plot(...) 

は意味がありません。 Rでは、プロットをオブジェクトとして保存することはできません。 ggplotsは例外ですが、shinyggplotオブジェクトを表示するには、まだrenderPlotを使用する必要があります。

関連する問題