我需要在闪亮的 DT::datatable 中跨列合并单元格。最好的方法似乎是利用 Javascript DataTables 扩展RowGroup。但是我不知道从查看上面链接中的页面到在我闪亮的应用程序中合并单元格要采取哪些步骤(我在闪亮的应用程序中工作是有原因的;)。
在这个 stackoverflow 问题的公认答案中有部分答案,但 1) 是关于合并行(即垂直而不是水平),以及 2)R 和 Javascript 交互背后的机制似乎被假定为先验知识,离开我的问题是“我需要从哪里下载哪些文件”和“我是否需要调整其中的 Javascript 代码?”
这是我的应用程序的一个简化示例:
library(shiny)
library(DT)
tbl <- data.frame("A"=c("foo", 1L, "question"),
"B"=c("bar", 2L, "answer"))
ui <- fluidPage(
dataTableOutput("table")
)
server <- function(input, output) {
output$table <- renderDT({
datatable(tbl, rownames=F, class="",
options = list(autoWidth=T,
columnDefs = list(list(className="dt-center", targets="_all"),
list(width="40px", target="_all"))))
})
}
shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)
我想从这里开始
对此
我需要使用缩写来显示数字,如下所示
1 shows as 1
999 shows as 999
1000 shows as 1K
999000 shows as 999K
1000000 shows as 1M
1500000 shows as 1.5M
1000000000 shows as 1G
etc...
Run Code Online (Sandbox Code Playgroud)
我在 stackoverflow 上看到过其他语言提出的问题(对于 Javascript 至少有三次):
使用公制前缀(如 1.5K、1M、1G 等)格式化 JavaScript 数字
如果数字为 1000,则将数字格式化为 2.5K,否则为 900
如何格式化类似于 Stack Overflow 信誉格式的数字
...但我无法找到 R 的任何内容。我错过了什么吗?
我需要用 R 绘制饼图,但我不想显示百分比,而是希望将原始计数覆盖在饼图部分上(即 300、250、110、190)。
下面的代码制作饼图,但带有百分比。
WhatIHave <- c("Money" = 300,
"Dinosaurs" = 250,
"Aether" = 110,
"Discussions" = 190)
data <- data.frame("Category" = names(WhatIHave), WhatIHave)
p <- plot_ly(data, labels = ~Category, values = ~WhatIHave, type = 'pie') %>%
layout(title = 'Lovely Pie',
xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
p
Run Code Online (Sandbox Code Playgroud)
我不敢相信以前没有人问过这个问题,但我确实在之前的问题或情节文档中找不到它。如果这是一个重复的问题,我们深表歉意。
我有与此 OP相同的问题,但对于 R 而言,是plotly 而不是plot()。
是否可以使绘图对象的图例背景透明?如何?如果可能,最好选择部分透明度,例如 alpha 级别为 0.4。