在R中,可以使用options(digits=n)
来调整输出值中的位数.然而,这在Shiny中不起作用,sprintf()
也不适用于非常低的数字,因为它只显示零.那么,我怎样才能获得像
options(digits = 4)
p、 val$p.value
这样我就可以在renderPlot中的情节标题中使用它了?
在R中,可以使用options(digits=n)
来调整输出值中的位数.然而,这在Shiny中不起作用,sprintf()
也不适用于非常低的数字,因为它只显示零.那么,我怎样才能获得像
options(digits = 4)
p、 val$p.value
这样我就可以在renderPlot中的情节标题中使用它了?
我们可以简单地使用signif
来设置所需的位数,而不是更改options
.以下迷你应用程序可以根据需要进行修改,以用于打印标题.
library(shiny)
ui <- fluidPage(
fluidRow(
column(6,
numericInput(
"hello_options",
label = "Number",
value = 3.145677177118
)),
column(6,
numericInput("digits",
label = "Digits",
value = 4
)
)
),
textOutput("out_text")
)
server <- function(input, output, server){
output$out_text <- renderText(
signif(input$hello_options, digits = input$digits)
)
}
shinyApp(ui = ui, server = server)
如果你想把format
改成scientific,那么把你的服务器改成这个.但是,请注意,这将为您提供应转换回的字符.
server <- function(input, output, server){
output$out_text <- renderText(
format(signif(input$hello_options, digits = input$digits),
scientific = TRUE)
)
}