【发布时间】:2019-07-13 03:48:04
【问题描述】:
我正在使用 Shiny Buttons extension 下载 Excel 文件中的数字。
DTa <- data.table(
dataSum()[,1],
format(round((10^-6)*dataSum()[,-1],2),nsmall = 2,decimal.mark=",",big.mark=".")
)
DTa<- DT::datatable( DTa, extensions=c("Buttons"),options = list(paging = FALSE,
searching = FALSE,
dom = 'Bfrtip',
#buttons = c('copy','excel')
buttons = list(
list(
extend = 'excel',
text = "Save ",
title = 'KRB'
), list(
extend = 'copy', title = 'krb'
)
)
),
caption= paste("Stichtag:",
as.character(sub("([0-9]{2})([0-9]{2})([0-9]{4})KRB.csv", "\\1.\\2.\\3",input$date))))
在上面的第一部分中,我将数字转换为德语格式,即将, 设置为小数分隔符,. 设置为千位分隔符。在第二部分中,我调用了DT 的extensions Buttons。
在 Shiny 中,数字如下所示:
问题:在 Shiny 中按下保存按钮后,所有只有, 和没有. 的图形格式错误。
比如保存后34,21变成3.421!但是 67.809,97 是正确的!
如何在导出或保存过程中保持图形的格式?
不知道有没有帮助:
当我进入调试模式并执行第二部分 DTa<- DT::datatable( DTa, extensions ... 时,我看到以下内容:
可以看到数据中的数字是字符!
是否可以在我的server.R 中编写一个JavaScript 函数来使用language.decimal 选项?有一个例子here,但是我不能完全使用它。
【问题讨论】:
-
可能输出为 CSV?
-
我也尝试了 CSV 格式的输出,但是看起来不太好
-
你能为
dataSum提供可重现的例子吗?
标签: r datatables shiny data.table dt