【问题标题】:How to color one cell with kableExtra如何使用 kableExtra 为一个单元格着色
【发布时间】:2019-10-21 03:56:10
【问题描述】:

我只是想用 kableExtra 突出显示表格中的一个单元格。我遇到的问题是我的一些单元格有 $s 和 ()s。这是它的样子

df3 <- data.frame(
  "Bitcoin Price:" = c("Snow Panther B1+", "ASICminer 8 nano", "S9", "Avalon 921", "Dragonmint T1", "Edit E11++"), 
  "3000" = c("($270.71)", "($3376.85)", "($115.80)", "($530.81)", "($1108.14)", "($1035.42)"),
  "6000" = c("$1050.37", "($1004.31)", "$666.06", "$547.62", "($245.39)", "$1337.12"), 
  "9000" = c("$2371.44", "$1368.24", "$1447.92", "$1626.04", "$617.35", "$3709.66"),
  stringsAsFactors = FALSE, check.names=FALSE)

这个我试过了,还是不行

df3 %>%
  mutate(
    `6000`[,2] = cell_spec(`6000`[,2], color = "red", bold = T)
  ) %>%
  select("Bitcoin Price:", everything()) %>%
  kable(align = "c", escape = F) %>%
  kable_styling("hover", "striped", full_width = F)  %>%
  add_header_above(c(" " = 1, "Current Difficulty" = 3)) %>%
  add_footnote(c("Statistics Calculated 2019"), notation = "symbol")

有人有什么建议吗?我觉得我很亲近。我正在尝试使单元格的值 ($1004.31) 为红色。

【问题讨论】:

  • 它不是重复的。我不能使用他们使用的&gt;80,因为我在单元格中有特殊字符
  • 它与标记的骗子不完全相同,因为它们没有使用完全相同的语句来检查真假,但x &gt; 80x == "($1004.31)" 并没有本质上的不同——基于逻辑语句设置颜色的相同方法适用。但是,我认为这不是一个很好的骗局,因为它只提到 kableExtra 并依赖于 Latex,这可能与您相关,也可能不相关。 This one 似乎更合适

标签: r kableextra


【解决方案1】:

这是你要找的吗?

df3 %>%
  mutate(`6000` = cell_spec(`6000`, "html",color = ifelse(`6000` == "($1004.31)", "red", "grey"))) %>%
  select("Bitcoin Price:", everything()) %>%
  kable(align = "c", escape = F) %>%
  kable_styling("hover", "striped", full_width = F)  %>%
  add_header_above(c(" " = 1, "Current Difficulty" = 3)) %>%
  add_footnote(c("Statistics Calculated 2019"), notation = "symbol")

【讨论】:

    猜你喜欢
    • 2019-04-19
    • 2018-10-11
    • 2020-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多