当前位置:   jquery > 正文

使用Shiny(R)将动态鼠标悬停添加到DataTable中列中的所有条目

javascript,r,shiny,dt,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工具,前端开发工具,开发人员工具,站长工具

我很确定我的问题已经有了答案,但无论我搜索多么努力,我都找不到任何可以解决这个问题的解决方案.因此,如果这被认为是微不足道的,请不要拍.

现在问题在于:

假设我们使用Shiny渲染dataTable,当我将鼠标悬停在单元格上并从底层数据集动态输出时,我想获取每个单元格的id(rowID + columnID).我知道已有鼠标悬停的解决方案,例如shinyBS或此示例:

    #server.R:
    shinyServer(function(input, output) {
  dat <- list(iris,cars) 
  output$tabset <- renderUI({
    tabs <- list()
    for(i in c(1,2)){
      id <- paste("id",i, sep="")
      tabs[[i]] <- tabPanel(title=id,DT::dataTableOutput(outputId=id)) #dynamic panels
    }
    do.call(tabsetPanel,c(tabs, id='Panel'))
  })

  lapply(1:2,function(i){
    id <- paste("id",i, sep="")
    output[[id]] <- DT::renderDataTable({
      dat[[i]]},
      extensions = c('Scroller'),
      options=list(deferRender=TRUE, dom='T<"clear">fitrS', scrollY=540, searchHighlight = TRUE,
                   scrollCollapse=TRUE, autoWidth = TRUE,
                   columnDefs = list(list(width = '60%', targets = '_all',
                                          render = JS("function(data, type, row, meta) {",
                                                      "return type === 'display' && data.length > 5 ?",
                                                      "'' + data.substr(0, 5) + '...' : data;",
                                                      "}"
                                          )))),
      callback = JS('table.page(3).draw(false);'),
      escape=FALSE, rownames=TRUE,class = 'table-condensed', server=TRUE)
      })
})

和ui.R

    #ui.R:
library(shiny)
library(DT)

ui <- fluidPage(
  uiOutput('tabset')
)

如果一个单元格的长度为5或更长,则会有一个鼠标悬停.我现在要做的是看看突出显示的单元格是否来自带有'id1'的面板,来自列Sepal.Length,鼠标悬停应该显示来自面板'id2'的数据,它具有与Sepal相同的rowId.长度并应显示列dist的数据.基本上我想要不要呈现静态内容或只是修改已经在该单元格中的字符串,而是根据已经悬停的单元格动态地呈现其他内容.这有可能与Shiny和JavaScript?

感谢您的任何意见.

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号