gpt4 book ai didi

r - 部署可以在应用程序本身内部调用 runApp() 的 Shiny 应用程序(特别是制表程序包)

转载 作者:行者123 更新时间:2023-12-04 07:19:18 25 4
gpt4 key购买 nike

我正在尝试部署一个 Shiny 应用程序,该应用程序允许用户上传 pdf 文档并从所选页面中提取表格。为此,我正在使用包 tabulizer .一个基本的可重现示例:

library(shiny)
library(tabulizer)

ui <- fluidPage(
fileInput("report", NULL,buttonLabel = "Upload report"),
numericInput("page","Specify page number",value = 1),
actionButton("extract","Extract"),
verbatimTextOutput("data")
)

server <- function(input, output, session) {
generate_data <- reactive({
req(input$report)
# This locate_area function calls runApp() from the tabulizer package
area <- locate_areas(file = input$report$datapath,
pages = input$page,
widget = "reduced")
table <- extract_tables(file = input$report$datapath,
pages = input$page,
area = area)
return(table)
})%>% bindCache(input$page) %>% bindEvent(input$extract)

output$data <- renderPrint({
# Just for the sake of this example to show it works
generate_data()
})
}

shinyApp(ui = ui, server = server)
如果我在本地运行它, locate_area()将使我在 RStudio 中的查看器上弹出 pdf 页面,一切都很好。但是,如果我发布应用程序,单击操作按钮后它不会运行。我知道问题来自 locate_area()因为它本质上调用另一个 runApp在 Shiny 的应用程序中。我尝试为 locate_area() 使用不同的小部件无济于事。有人知道绕过这个问题的方法吗?

最佳答案

从相关问题来看- issue 15issue 53 - 看来您最好的方法是真正复制原始 tabulizer 的功能功能到您自己的应用程序中,因为目前该程序包不提供与其他 Shiny 应用程序的轻松集成。

关于r - 部署可以在应用程序本身内部调用 runApp() 的 Shiny 应用程序(特别是制表程序包),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68605237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com