【发布时间】:2016-11-26 04:52:11
【问题描述】:
所以我正在尝试部署一个 Shiny 应用程序,该应用程序是按照我在 R-blogger 网站上使用 Chrome 便携版和 R 便携版找到的说明制作的。我的问题是,在我开始使用 DT 包后,我的应用程序遇到了错误(我猜),因为我的表格输出框不再呈现任何内容,我确实在 R 便携版中安装了“DT”包,所以我不明白这是从哪里来的。 (顺便说一句,我对这个应用程序的部署方式一无所知,我只按照说明进行操作,一旦我不明白这次发生了什么变化,它就起作用了)
这是我的日志,如果它可以帮助你(法语对不起):
Lechargement a necessité le package : 闪亮 Le Chargement a necessité le package : 方法
附加包:'shinydashboard'
以下对象被 'package:graphics' 屏蔽:
box
附加包:'DT'
以下对象被 'package:shiny' 屏蔽:
dataTableOutput, renderDataTable
[1] "C:/Users/p-haffoud/Documents/TestApp/shiny"
好的,这是我的用户界面:
library(shiny)
library(shinydashboard)
shinyUI(dashboardPage(
dashboardHeader(title="Type Arret"),
dashboardSidebar(
sidebarMenu(
menuItem("Maladie Ordinaire", tabName = "MO", icon = icon("plus-square")),
menuItem("Longue Maladie", tabName = "LM", icon = icon("clock-o")),
menuItem("Longue Duree", tabName = "LD", icon = icon("hourglass")),
menuItem("Total", tabName = "Tot", icon = icon("arrow-right"))
)
)
,
dashboardBody(
tabItems(
tabItem(tabName = "MO",
fluidRow(
img(src='SMACL.jpg',length=75,width=150, align = "right"),
column(8,
titlePanel(
tags$h1("Proportion des jours d'arrets",style="font-family:Impact"))
)),
wellPanel(
fluidRow(column(3,
numericInput(inputId = "numMO",
label = "Jour limite",
value = 10, min = 1, max=1000),
actionButton(inputId="clicksMO",
label= "Actualiser")))),
wellPanel(
fluidRow(
dataTableOutput("tableMO"))))
)
)
))
这是我的服务器文件:
library(DT)
print(getwd())
DFSurvieMO <- read.csv2("data/DFSurvMO.csv",check.names=FALSE)
DFSurvieMO <-DFSurvieMO[,c(2,3,4,6)]
shinyServer(
function(input, output, session){
session$onSessionEnded(function() {
stopApp()
})
numerMO <- eventReactive(input$clicksMO , {(which(abs(DFSurvieMO[,1]-input$numMO)==min(abs(DFSurvieMO[,1]-input$numMO)))[1])})
valeurnumer <- eventReactive(input$clicks, {
(numer())
})
output$tableMO <- DT::renderDataTable({
datatable(DFSurvieMO,
options =
list( displayStart= numerMO()-2,
pageLength = 15,
lengthChange = FALSE, searching =FALSE),rownames= FALSE) %>% formatStyle(
c(1:2),
backgroundColor =
if(numerMO()>1) {
styleInterval(c(DFSurvieMO[,1][numerMO()-1],DFSurvieMO[,1][numerMO()]), c('blank','lightblue', 'blank'))
}
else {
styleInterval(DFSurvieMO[,1][numerMO()], c('lightblue', 'blank'))}
)
})
})
我所指的数据只是一些带有数值的 csv 表,第一个是以天为单位的时间。其他四个是 3 个整数和 1 个双精度数,尽管我怀疑它会改变什么。
谢谢。
【问题讨论】:
-
请为您的应用添加一个可重现的小示例。
标签: r deployment package shiny