Tag: shiny的

下载excel文件shiny的linux

我正在使用R包Shiny来开发我自己的Web应用程序。 我有一个下载button,允许我将数据导出到Excel文件。 在excel文件中,有4张纸,每张纸上都有一个数据框。 例如,在sheet1中有dataTab1,在sheet2中有dataTab2,在sheet3中有dataTab3,在sheet4中有dataTab4。 为此,我正在使用函数downloadHeader()在shiny的server.R中。 这是我的代码: 输出$ downloadTab < – downloadHandler( filename ="Tab.xls", content = function(file) { #db <- paste(tmpdir,file,sep="/") channel <- odbcConnectExcel(xls.file = file,readOnly=FALSE) sqlSave(channel, tab1, tablename = "sheet1",rownames = F) sqlSave(channel, tab2, tablename = "sheet2",rownames = F) sqlSave(channel, tab3, tablename = "sheet3",rownames = F) sqlSave(channel, tab4, tablename = "sheet4",rownames = F) odbcClose(channel) }, […]

R Shiny导出logging到由用户命名的Excel工作簿

我试图编写一个Shiny应用程序只是为了练习应用程序需要一张Excel表格,从Excel工作表抓取一个ID号码,并对数据库运行这些ID从数据库返回一些额外的细节 就这个例子而言,我已经导入了数据并计算了数据集中的行数。 然后,我将这个数据集传递给函数get_DW ,它将返回一个dataframe,我想要计算返回的dataframe中的logging数。 当用户按下Gobutton时,会发生此步骤 当我运行我的shiny的应用程序,数据导入和logging的数量进行计数。 我也设法让它从数据库返回logging并计算这些logging。 我无法导出使用output$downloadData ,没有任何反应。 我按下button获取对话框保存,但是当我input文件名,然后按保存没有得到保存到文件夹 任何人都可以看到在代码中我可能会出错的地方。 我已经看到了这个问题从XLConnect R下载Excel文件Shiny,但它不使用我想要的库和我不是很清楚的解释给出 我更新了下面的代码来使用虹膜数据集。 它有点乱,但它复制了节省的缺乏 服务器代码 # Server Code server <- shinyServer(function(input, output) { # Create a reactive expression which will grab the data # We pass that to the outputs reactive element to the outputs data <- reactive({ iris }) # Return the number […]

shiny下载一个excel文件

我有一个shiny服务器上设置一个Linux实例我有一个文件夹称为模板有一个Excel文件模板用户去网页,并按下载button,理论上他们应该能够下载模板,无论他们喜欢他们的本地机器。 我看到后Shiny下载文件的代码不工作 当我尝试运行它,我得到一个文件保存到我的Windows笔记本电脑上的my downloads ,它被称为不是名称Template.xlsx 我的两个问题是 是否可以提示用户在本地保存文件的位置 是否有可能使其默认为XLSX 伪代码是 ui <- shinyUI(fluidPage( # Side Panel with Options fluidRow( column(4, wellPanel( id = "leftPanel", div( id = "Header", h3("Options"), tags$hr() ), div( h4("1. Download the empty excel template"), downloadButton("downloadBtn", "Download Excel Template") ) ))))) 服务器 # Define server logic required server <- shinyServer( function(input, output) { […]

SHINY R根据用户select读取不同版本的excel文件

我有一个shiny的应用程序,读取由用户上传的文件不同的人有不同的版本的Excel。 所以,如果用户使用Excel 2007或Excel 2010,我们使用一段代码。 如果他们在Excel 2003中上传,我们使用不同的库来读取文件。 用户在表格中指定了哪个版本的excel 下面是做这个的function get_data <- function(strFilePath, storageType) { if (is.null(strFilePath)) return(NULL) if (storagetType == 'xls2010' || storagetType == 'xls2007'){ df <- openxlsx:read.xlsx(strFilePath,sheet = 1) } else if (storagetType == 'xls2003'){ df <- XLConnect:readWorksheetFromFile(strFilePath) } return(df) } 为了实现这个有光泽,我有两个小部件。 一个fileInput和一个selectInput 。 用户select正在运行的哪个版本的excel,然后select由function get_data读入的文件。 我怀疑它,因为我没有正确利用反应。 当我运行应用程序并上传文件时,我收到错误消息 错误:找不到对象“storagetType” # Global.R storage_types <- c( "Excel […]

将excel文件读入R,并将其中的所有工作表合并到一个数据框中

我有一个不同数量的表格的Excel表(它可以有2张或3张或只是取决于用户)。 所有表格的标题都是一样的。 (前两行被认为是标题) 我想合并所有这些表单,并将其放入一个单一的数据框。 这些文件是.xlsx格式。 每张纸包含大量的行(30列和8000行)。 我是在R阅读excel文件的初学者。我正在通过他们,同时如果有人知道如何实现这一点,请让我知道。 Excel工作表的一个例子就是这样的数据 PS:我想实现这一切shiny。 所以,如果有任何有效的方法shiny请提及。 ui.R fileInput('file2', h5('Choose Your Observation Data'), accept=c('text/csv','text/comma-separated-values,text/plain','.xlsx')) server.R b <- reactive({ fileinput2 <- input$file2 if (is.null(fileinput2)) return(NULL) #xlfile <- list.files(pattern = ".xlsx") xlfile <- fileinput2[1] wb <- loadWorkbook(xl_file) sheet_ct <- wb$getNumberOfSheets() b <- rbindlist(pblapply(1:sheet_ct, function(x) { res <- read.xlsx(xl_file, x) }), fill=TRUE) b <- b […]

R:将无功输出写入Excel文件?

我在R中创build了一个方法,它从测量中获取4个值,然后将它们保存到局部variables中,并将它们放置在matrix中,然后将该matrix写入Excel文件。 非常简单的概念,但是因为input是react native的..如果input多个调查,那么它只是覆盖了以前的调查..所以现在我需要一个计数器variables。 这里是代码的一些剪辑。 (在服务器类中) surveyFinish <- eventReactive(input$click2,{“ state = input$UState happiness = input$UHap work = input$UWork env = input$UEnv surveyans <- paste(state, happiness, work, env, sep=" ") newMat = matrix( c(state, env, work, happiness), nrow = 1, ncol = 4, byrow = TRUE) writeWorksheetToFile("StateSurvey.xlsx", newMat, "SomeOtherSheet", z, 1, header = FALSE) write.table(newMat, "SurveyTab.txt", sep="\t") […]

Excel报告使用访问数据库(〜2GB)作为后端可替代由Rshiny或降价?

我目前有一个Access数据库,从各个国家的Oracle拉取数据,目前大约1.3 GB。 但是,应该增加更多的国家和方面,这将进一步扩大规模。 我的估计大约是2 GB,因此标题。 每个国家都有一张桌子。 这些表然后链接到第二个Access数据库中,用户可以通过表单从Access数据库中的相应链接表中抽取数据,按月汇总,并将其写入表中。 然后从Excel中查询该表格,并显示一些图表。 此外,还有另一种forms,用户可以select某些按键,如业务区域,并由此分割数据。 这可以拉到同一个excel文件的第二张表。 用户不仅希望能够通过更多密钥进行过滤和分组,而且还能够自定义显示数据的时间段,例如从第xx天到第yy天(按星期或月份累计)(目前,从每个月的第一个月开始只支持月份)。 由于目前的Access-Access-Excel解决scheme在我看来是相当麻烦的,所以我想知道是否可以使用R和shiny或降价来制作本报告用户所需的扩展。 我知道shiny不允许上传超过30MB的文件,但我打算离线使用它。 我只是无法find这个文件大小限制 – 或者是否适用相同的限制? 我知道一些R,我认为使用dplyr可以快速完成所需的数据聚合。 问题是用户不需要,所以报告需要高度定制,而不需要技术知识。 既然我没有预先知道的shiny或降价的知识,我想知道是否值得通过学习一个足够实施这个报告的麻烦。 我想做什么是可行的shiny或R降价? 如果是这样,它会加载足够快,可用吗?

使用selectInput选项作为x和y绘制variables

library(shiny) library(xlsx) shinyUI(fluidPage( titlePanel("To-Fest"), sidebarLayout( sidebarPanel( fileInput('file1', 'Choose File', accept = ".xlsx"), #downloadButton('downloadData', 'Download'), tags$hr(), checkboxInput('header', 'Header', TRUE), tags$hr(), selectInput("select1", "Select X Variable", choices =c()), tags$hr(), selectInput("select2", "Select Y Variable", choices =c()), uiOutput("choose_columns") ), mainPanel( tabsetPanel( tabPanel("Data", tableOutput('contents')), tabPanel("Plot", plotOutput('plot1')) ) ) ) )) library(shiny) library(xlsx) shinyServer(function(input, output, session) { dsnames <- c() rawData <- […]

在R中以横向格式创build一个excel文件

在我上一篇文章中没有足够的信息。 所以我重新发布更多的信息.​​..我想出口在rshiny我的表格和Excel格式的情节。 我怎么能这样做? 谢谢 我想获得这样的东西… 我试过了 : wb <- createWorkbook(type="xlsx") sheet <- xlsx::createSheet(wb, sheetName = "Sheet1") xlsx.addTable(wb, sheet, tabA, startCol=2) xlsx.addTable(wb, sheet, tabB, startCol=8) xlsx.addTable(wb, sheet, tabG, startCol=1) xlsx.addTable(wb, sheet, tabE, startCol=12) plotFunction<-function(){ library(ggplot2) p1 <- ggplot(data = tt_total, aes(x = VAR1, y = VAR2))+geom_bar(stat = "identity",aes(fill = VAR2))+scale_fill_gradient(low="#56B4E9", high="blue") + labs(y = "XXX", x […]

将R光泽输出导出到多张单张excel。

我已经build立了一个应用程序,它根据所选的filter给出一个输出数据表。 假设我改变filter10次,它给了我10个结果。 我需要将结果存储在单张excel中的10张表格中。 例如:selectfilter选项:A获取输出:Output1单击“下载”button。 将结果保存为sheetname:test1,excel:sample1.xlsx 现在我selectfilter选项:B获取输出:Output1单击“下载”button。 将结果保存为sheetname:test2,excel:sample1.xlsx 这是我的代码 output$downloadData1 <- downloadHandler( filename = function() { paste('Sample','_', Sys.Date(), ".xlsx", sep="") }, content = function(file) { write.xlsx(makeTable(), file, sheetName =input$sampleselect, row.names = FALSE , append = TRUE) }) sampleselect是筛选器的select,我也通过这个作为工作表名称。 目前,这段代码抛出了唯一的Excel文件。 即对于filterA:它创build一个Excel Sample.xlsx和filterB:它创build一个名为Sample.xlsx的Excel 提前致谢。