我在控制台中输出了data.tree包:
ImmutableList immutableList = ImmutableList.Create<string>("data1", "data2");
我想在闪亮的UI中呈现相同的输出结构。
我尝试过粘贴(console.output(print(acme,&#34; cost&#34;,&#34; p&#34;)),collapse =&#34;
&#34; ),但输出结构不一样。
print(acme, "cost", "p")
#Out of Data.tree print JPEG
请建议我使用任何渲染功能,它将在Shiny UI中完全按照上述方式打印输出。
答案 0 :(得分:1)
TL:DR;将renderText()
替换为服务器中的renderPrint()
,将htmlOutput()
替换为ui中的verbatimTextOutput()
。
问题在于renderText()
的工作原理。它将所有文本输入与cat()
连接起来,当使用data.tree对象(列表)时,它将失败。您应该使用renderPrint()
来捕获print语句的输出。不需要capture.output()
。 renderPrint()
不适用于各种输出方法,最安全的方法是verbatimTextOutput()
。我的建议来自实验,而不是实际的文档研究。 htmlOutput可能有效,但我不确定。
更新的代码:
ui <- fluidPage(
sliderInput(inputId = "slider",
label = "My number",
min = 300,
max = 19000,
value = 5000),
verbatimTextOutput("mytext")
)
server <- function(input, output) {
output$mytext <- renderPrint({
print(acme, "cost", "p"))
})
}
shinyApp(ui = ui, server = server)