添加单选按钮以在 Shiny 中选择 DataTable 行

2024-03-01

I need to add radiButtons to select rows in Data, i.e. the radiobutton choosen should be passed to input. I cannot use built in row selection in DT. I really need to use radiobuttons to select the row. This is what is wanted: wanted result for rows selection

Using https://yihui.shinyapps.io/DT-radio/ https://yihui.shinyapps.io/DT-radio/我可以选择列。 补充:

library(shiny)
library(DT)
shinyApp(
ui = fluidPage(
title = 'Radio buttons in a table',
DT::dataTableOutput('foo'),
verbatimTextOutput("test")
),
server = function(input, output, session) {
m = matrix(
  c(round(rnorm(24),1), rep(3,12)), nrow = 12, ncol = 3, byrow = F,
  dimnames = list(month.abb, LETTERS[1:3])
)
for (i in seq_len(nrow(m))) {
  m[i, 3] = sprintf(
    if_else(i == 1,
            '<input type="radio" name="%s" value="%s" checked="checked"/>',
            '<input type="radio" name="%s" value="%s"/>'),
    "C", month.abb[i]
  )
}
m=t(m)

output$foo = DT::renderDataTable(
  m, escape = FALSE, selection = 'none', server = FALSE,
  options = list(dom = 't', paging = FALSE, ordering = FALSE),
  callback = JS("table.rows().every(function() {
      var $this = $(this.node());
                $this.attr('id', this.data()[0]);
                $this.addClass('shiny-input-radiogroup');
 });
                Shiny.unbindAll(table.table().node());
                Shiny.bindAll(table.table().node());")
 )
output$test <- renderPrint(str(input$C))
}
)

The result is: partial result for columns selection

天真地,我尝试删除 m=t(m) 并将回调中的行更改为列。这是行不通的,因为示例中的回调函数将 class 和 id 添加到最后一个,而后者没有对应的列。

任何想法?


一个“肮脏”的修复可能是将整个数据表包装在一个divCid 和shiny-input-radiogroup class:

shinyApp(
  ui = fluidPage(
    title = 'Radio buttons in a table',
    tags$div(id="C",class='shiny-input-radiogroup',DT::dataTableOutput('foo')),
    verbatimTextOutput("test")
  ),
  server = function(input, output, session) {
    m = matrix(
      c(round(rnorm(24),1), rep(3,12)), nrow = 12, ncol = 3, byrow = F,
      dimnames = list(month.abb, LETTERS[1:3])
    )
    for (i in seq_len(nrow(m))) {
      m[i, 3] = sprintf(
        if_else(i == 1,
                '<input type="radio" name="%s" value="%s" checked="checked"/>',
                '<input type="radio" name="%s" value="%s"/>'),
        "C", month.abb[i]
      )
    }
    m
    output$foo = DT::renderDataTable(
      m, escape = FALSE, selection = 'none', server = FALSE,
      options = list(dom = 't', paging = FALSE, ordering = FALSE)
    )
    output$test <- renderPrint(str(input$C))
  }
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

添加单选按钮以在 Shiny 中选择 DataTable 行 的相关文章

  • 如何将内联 JavaScript 与 Express/Node.js 中动态生成的内容分开?

    对于具有几年 Web 开发经验但没有找到答案的人来说 这是一个有点菜鸟的问题程序员堆栈交换 or Google 我决定在这里问一下 我在用Express网络框架Node js 但这个问题并不特定于任何 Web 框架或编程语言 以下是从数据库
  • 摩卡 - Chai Karma“套件未定义”

    我对 jscript tdd 很陌生 遇到了问题 希望有人能告诉我我在做什么 在浏览器中运行测试 通过 HTML 文件 一切正常 通过节点和业力运行它们我得到以下异常 我想在 node js 主机的 karma 中使用 Mocha 和 Ch
  • SPSS 中的标准化残差与 R rstandard(lm()) 不匹配

    在寻找 R 相关解决方案时 我发现 R 和 SPSS 版本 24 在计算简单线性模型中的标准化残差方面存在一些不一致 看来SPSS所谓的标准化残差匹配 R学生化残差 我完全不认为某处存在软件错误 但显然这两个程序之间存在差异 看看这个例子
  • 使用 dc.js 按条形值对条形图中的条形进行排序(排序)

    如何通过维度的计算值而不是维度本身的名称对 dc js 示例中的 x 轴 维度 进行排序 例如 请考虑序数条形图的 dc js 示例 https github com dc js dc js blob master web examples
  • Snap.svg - 停止在可悬停元素的子元素上重新触发悬停事件

    对于一个项目 我使用的 SVG 形状由背景多边形和背景多边形上方的一些文本 我已将其转换为路径 组成 我正在使用 Snap svg 为我的形状设置动画 当我将鼠标悬停在多边形上时 形状应该缩放到特定尺寸 包括其中的所有内容 鼠标移开时 形状
  • React-Redux:state.setIn() 和 state.set() 有什么区别?

    我见过使用setIn and set 在一些react redux代码中 state setIn state set 我在这里找到了一些文档https facebook github io immutable js https facebo
  • 将 GMT 时间转换为当地时间

    我以这种格式从我的服务器获取 GMT 时间 Fri 18 Oct 2013 11 38 23 GMT 我的要求是使用Javascript将此时间转换为本地时间 例如 如果用户来自印度 首先我需要采用时区 5 30并将其添加到我的服务器时间并
  • Chrome 扩展程序在代码中使用 client_secret

    我正在开发具有自己的 oAuth 授权的 Google Chrome 扩展 当然 我必须使用 client id 和 client secret 作为请求令牌 有什么办法可以向用户隐藏这些数据吗 由于此请求只是 javascript 源代码
  • 闭包作为数据合并习惯的解决方案

    我正在尝试解决闭包问题 而且我think我发现了一个案例 他们可能会有所帮助 我有以下几部分需要处理 一组正则表达式 旨在清理状态名称 位于函数中 具有州名称 上述函数创建的标准化形式 和州 ID 代码的 data frame 用于链接两者
  • 如何解决 Typescript 构建中的错误“找不到模块 'jquery'”

    我目前在 ts 文件的顶部有这个import require jquery 我这样做是因为我试图在我的打字稿文件中使用 jquery 但我似乎无法编译它 因为它返回标题中所述的错误 我正在使用 ASP NET CORE 脚本文件夹 tsco
  • window.location 和 location.href 之间的区别

    我对之间的区别感到困惑window location and location href 两者似乎都以相同的方式行事 有什么不同 window location是一个对象 它保存有关当前文档位置的所有信息 主机 href 端口 协议等 lo
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • Vuejs 2:去抖动不适用于手表选项

    当我在 VueJs 中反跳此函数时 如果我提供毫秒数作为原语 它就可以正常工作 但是 如果我将其提供为对 prop 的引用 它会忽略它 这是道具的缩写版本 props debounce type Number default 500 这是不
  • Javascript 假值(null、未定义、false、空字符串:“”或 '' 和 0)和比较(==)运算符 [重复]

    这个问题在这里已经有答案了 当我使用任何一个值时 null undefined false 0 in a if陈述 它总是被评估为谬误 false 另外 这些值的否定 null undefined false 0 in a if语句总是被评
  • 代码镜像错误:未捕获错误:扩展集中无法识别扩展值([对象对象])

    全部 我目前正在从事一个React Electron项目 该项目的目标是完成一个Markdown编辑器 当我配置codemirror 该程序报告错误说 Uncaught Error Unrecognized extension value
  • 在 ifelse() 语句内部和外部运行一行时的不同输出

    我正在尝试运行一个简单的命令 但不知道为什么在内部和外部运行它时输出不同ifelse 功能 函数条件评估为FALSE 所以输出应该完全相同 但是 单独运行时 输出为0 0 1 1 0 1 0 1 NA 根据需要 但是从ifelse 函数 输
  • 在 JavaScript 循环之外声明变量可以提高速度和内存?

    C 也有类似的问题 但我们没有看到 JavaScript 的任何问题 在循环内声明变量是否可以接受 假设循环有 200 次迭代 使用样本 2 相对于样本 1 是否有性能要求 内存和速度 我们使用 jQuery 来循环 它提高了我们将 var
  • 在 Javascript 中连接空数组

    我正在浏览一些代码 我想知道这有什么用处 grid push concat row 根据我的理解 它等同于 grid push row 为什么要大惊小怪 连接 你想使用 concat当您需要展平数组并且没有由其他数组组成的数组时 例如 va
  • Javascript - 水波纹效果

    我需要 JS 上的脚本 它将以 水波纹 样式更改 images html 抱歉 6MB GIF 文件 http fcuunited ru temp listening2 gif http fcunited ru temp listening
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0

随机推荐

  • IE 兼容模式:“X-UA-Compatible”标签“Edge”

    我有这个在 它将强制 IE 使用最新的渲染模式 但兼容模式是否被认为是最后一种 我的意思是 例如 在 IE8 上使用此代码 它会强制它使用 IE8 或 IE8 兼容模式 该标签将尝试强制浏览器使用浏览器支持的最新渲染模式 它不会触发兼容模式
  • SSH 窗口大小对 paramiko 有何影响

    我正在构建一个应用程序 它可以通过 SSH 连接到 Cisco 设备来收集show命令 我正在 python 中使用 paramiko 模块来完成此任务 将命令输出与plink 知道 paramiko 的输出被截断了 尝试取消缓冲并增加缓冲
  • 将菜单下拉菜单移至左侧

    我的顶部菜单带有下拉导航 子菜单 下拉菜单位于主菜单的右侧 css ul dropdown ul width 220px visibility hidden position absolute top 100 left 0 如何将最后一个菜
  • R data.table 在多个条件下进行子集化。

    使用以下数据集 如何编写 data table 调用来对该表进行子集化 并返回该客户的所有客户 ID 和关联订单 如果该客户曾经购买过 SKU 1 预期结果应返回一个表 其中排除该条件下的 cid 3 和 5 以及匹配 sku 1 的客户的
  • STDIN 或文件作为 Hadoop 环境中的映射器输入?

    因为我们需要将一堆文件读入映射器 在非 Hadoop 中 环境 我用的os walk dir and file open path mode 读入 每个文件 然而 在 Hadoop 环境中 当我读到 HadoopStreaming 转换 将
  • AjaxControlToolkit NoBotState 始终为 InvalidBadResponse

    我正在尝试实现 AjaxControlToolkit NoBot 但我总是得到 falseIsValid 方法 状态值始终为无效不良响应 我在这里错过了什么吗 ASCX 代码 buttons textboxes etc
  • Common Lisp 中有停止解释器的命令吗?

    我正在寻找一个表达式 它会导致解释器在求值时退出 我发现了很多特定于实现的内容 但在 HyperSpec 中没有找到 我想知道是否有一些我在规范中没有看到的定义 我发现 quit 被 CLISP 和 SLIME 认可 并且 exit 仅被
  • 双击 UITabBarController Tab 转到导航控制器的根目录

    我有一个带有 2 个 UINavigationController 的 UITabBarController 设置 一个 UINavigationController 有一个 UIViewController 另一个 UINavigatio
  • 返回按钮和刷新之前的活动

    如果我们有两个活动 文件列表和最后修改时间 文件编辑活动 用户从列表中选择一个文件并进入文件编辑活动 完成编辑后 用户按后退按钮返回到文件列表 该列表不会重新加载 因此刚刚编辑的文件修改时间显示的值不正确 按下后退按钮后刷新文件列表的正确方
  • 根据设备是 Android 平板电脑还是手机使用不同的主题

    我想知道如何根据设备是平板电脑还是手机来更改活动的主题 我有一个设置活动 android style Theme Black NoTitleBar以它为主题 在平板电脑上 我希望这个活动的主题是这样的 android style Theme
  • RxSwift:按住按钮时可观察

    如何创建在按住按钮时重复流式传输事件的 Observable 即使我也在寻找你的问题的解决方案 我从 RxSwift 松弛通道获得了帮助 let button submitButton rx controlEvent TouchDown b
  • MySQL PHP 不兼容

    我在本地运行 WAMP 但连接到远程 MySQL 数据库 PHP本地版本是最新的5 3 0 远程数据库之一 版本 5 0 45 工作正常 但是 我尝试连接的另一个远程数据库 版本 5 0 22 在死亡之前抛出以下错误 警告 mysql co
  • 动态模型操纵

    我在谷歌上搜索有关模型操作的最佳实践 显然 在 4 x 中 你有这个函数 setField 例子here http www learnsomethings com 2012 10 05 dynamically changing the mo
  • Mac OS 使用 Java 推送通知

    我想在我的 JavaFX 项目中添加 Mac OS 风格的推送通知 但这实际上非常困难 我正在遵循已接受的答案中描述的方法 在Java中使用10 8通知中心 https stackoverflow com questions 1172065
  • 选择在 Mozilla Firefox 中触发父元素上的 MouseLeave 事件

    我遇到以下问题 在 Mozilla Firefox 中 每当我将鼠标悬停在dropdown inside一个表 它会触发mouseleave尽管鼠标光标仍在表内 但表的事件 在Chrome或Edge中不存在这样的问题 这是我的代码和示例数据
  • Python 有相当于 Perl 的 qq 的东西吗?

    Using qq Perl 允许几乎任何字符用作引号来定义包含以下内容的字符串 and 无需逃避它们 qq She said Don t qq And he said I won t 特别方便 因为我的键盘有 几乎从未使用过 Python
  • ASP.net“{Controller}/”返回 403.14 错误

    我正在开发的一个项目遇到一个奇怪的问题 问题在于指向某个 URL localhost 62168 Images Index 的链接 我有链接到该 URL 的按钮 但是当访问 localhost 62168 Images 时 它会返回 HTT
  • 在node.js(express)中获取MySQL数据并使用EJS打印

    我正在尝试获取 MySQL 表的数据并使用 EJS 以 HTML 格式打印它们 但这不起作用 它告诉我print not defined 我应该怎么办 router get data function req res res render
  • 未为项目设置 OutputPath 属性

    构建我的 Jenkins MSBuild 解决方案给了我这个错误 c WINDOWS Microsoft NET Framework v4 0 30319 Microsoft Common targets 483 9 error The O
  • 添加单选按钮以在 Shiny 中选择 DataTable 行

    I need to add radiButtons to select rows in Data i e the radiobutton choosen should be passed to input I cannot use buil