【问题标题】:How to use conditional formating in flextable by row (not entire columns)如何在 flextable 中按行(不是整列)使用条件格式
【发布时间】:2021-06-01 17:52:32
【问题描述】:

尝试在 flextable 中使用 scales::col_numeric 函数来有条件地格式化表格的一部分。

使用 flextable 自己的文档:

library(flextable)

ft_2 <- flextable(head(iris))
colourer <- col_numeric(
  palette = c("wheat", "red"),
  domain = c(0, 7))


bg(ft_2, 
   j = c("Sepal.Length", "Sepal.Width",
         "Petal.Length", "Petal.Width"),
   bg = colourer)


但如果只格式化前 2 行会导致错误。

bg(ft_2, 
   i = 1:2,
   j = c("Sepal.Length", "Sepal.Width",
         "Petal.Length", "Petal.Width"),
   bg = colourer)

x$data[i, j]

在 colourer 中抛出 debug() 表明 x 是整个列而不是前 2 行。

非常感谢任何帮助。

【问题讨论】:

    标签: r formatting flextable


    【解决方案1】:

    这可能是 packageVersion('flextable') 的问题,因为它适用于 (0.6.6) 和 packageVersion('scales') 1.1.1`

    library(flextable)
    ft_2 <- flextable(head(iris))
    colourer <- col_numeric(
      palette = c("wheat", "red"),
      domain = c(0, 7))
    
    bg(ft_2, 
        i = 1:2,
        j = c("Sepal.Length", "Sepal.Width",
              "Petal.Length", "Petal.Width"),
        bg = colourer)
    

    -输出

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-22
      • 2018-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多