3

我想使用带有包装表的sparkline迷你图表。gt是否可以?我知道它是可能的formattable,但我更喜欢使用gt表格。这是我想要完成的事情以及如何使用formattable.

格式表中的迷你图

library(tidyverse)
library(sparkline)
library(htmlwidgets) 
library(formattable)

set.seed(27)

tibble(
  name = rep(c("A", "B"), each = 20),
  value = runif(40, min = -10, max = 10) %>% cumsum()
) %>%
  group_by(name) %>%
  summarise(
    chart = spk_chr(
      value, 
      type="line")
  ) %>%
  formattable(align=c("l")) %>% 
  as.htmlwidget() %>% 
  spk_add_deps()
4

1 回答 1

5

用于fmt_markdown将列视为 HTML。

library(tidyverse)
library(sparkline)
library(gt)

p <- tibble(
  name = rep(c("A", "B"), each = 20),
  value = runif(40, min = -10, max = 10) %>% cumsum()
) %>%
  group_by(name) %>%
  summarise(
    chart = spk_chr(
      value,
      type="line")
  ) %>%
  gt() %>%
  fmt_markdown(columns = vars(chart))

然后,使用添加依赖项htmltools::attachDependencies

p_html <- gt:::as.tags.gt_tbl(p)

p_html <- htmltools::attachDependencies(p_html, htmlwidgets::getDependency("sparkline"))

print(p_html, browse = interactive())

迷你图

于 2020-10-26T06:24:49.063 回答