【问题标题】:Using formattable in R with dynamic column headers在 R 中使用带有动态列标题的 formattable
【发布时间】:2016-09-30 03:26:29
【问题描述】:

Formattable 允许在 R 和 Rshiny 中进行格式化数据输出。一个很好的解释在这里:https://www.r-bloggers.com/formatting-table-output-in-r/

在上面的“格式化程序”函数中,您可以看到列标题被引用。我想知道是否可以编写此代码以使用根据用户对 rshiny 应用程序的输入而更改的动态列标题。 我在想可能有一种方法可以引用列号而不是特定名称,但到目前为止我一直没有成功。任何帮助表示赞赏。

谢谢。

【问题讨论】:

  • 我发现“动态”这个词在大多数情况下在 SO 上使用时毫无意义。发布一个数据示例(或您指定的用户输入代码)并说出预期的内容。我不敢相信“动态”有自己的标签。标签上的描述让我觉得它不合适,因为 R 是一种解释语言。在 SO 上严重弃用发布代码图片。
  • 作为上面的一个简化示例,假设这段代码来自一个 rShiny 应用程序,该应用程序有一个 selectInput 允许用户选择一个日期,然后显示该日期的股票价格。此外,第 3 列的标题将更改为 paste0("Value",input$date)。随着列标题的变化,我不确定如何在上面的格式化函数中引用此列,其中“Value = color_tile("white","orange")"。我正在考虑按位置而不是名称来引用列,例如“DF[3] =”,但还没有成功。

标签: r dynamic shiny formattable


【解决方案1】:

该函数似乎正在寻找一个命名列表以匹配 data.frame 中的名称。我建议您使用所需格式创建列表,然后“动态”设置格式参数的名称以匹配您所显示的内容。

例如:

myFormats <- list( formatter("span") )
names(myFormats) <- input$userEnteredChoiceHere

formattable(DF, myFormats)

虽然没有实际可重现的代码,但很难为您提供更多帮助。一张代码的图片并不容易工作。

【讨论】:

    猜你喜欢
    • 2021-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-17
    • 2019-05-20
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    相关资源
    最近更新 更多