gt 表 - 单元格中的换行符

Nic*_*ick 6 newline r gt

我尝试使用 R gt 包在 gt 单元格中强制换行。在 gt 文档中,它被描述为可以使用cols_label()

 # example
 gt_tbl %>%
  cols_label(
    col = html("text1,<br>text2")
   )
Run Code Online (Sandbox Code Playgroud)

但在细胞中我找不到办法做到这一点。我尝试通过添加 \n 或
没有成功。

library(gt)

# dummy data
dat <- tibble(
  a=1:3,
  b=c("a","b c","d e f")
)

# A tibble: 3 x 2
      a b    
  <int> <chr>
1     1 a    
2     2 b c  
3     3 d e f

# with \n
dat %>% 
  mutate(b=str_replace_all(b," ","\n")) %>% 
  gt()

# with <br>
dat %>% 
  mutate(b=str_replace_all(b," ","<br>")) %>% 
  gt()
Run Code Online (Sandbox Code Playgroud)

始终生成相同的表:

在此处输入图片说明

预期成绩 :

在此处输入图片说明

有任何想法吗 ?

谢谢

zx8*_*754 11

我们需要调用fmt_markdown,见下文:

使用fmt_markdown()时,传入单元格中的任何 Markdown 格式文本将在渲染期间转换为适当的输出类型。

dat %>% 
  mutate(b = str_replace_all(b, " ", "<br>")) %>% 
  gt() %>% 
  fmt_markdown(columns = TRUE)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明


或解决方法:拆分为新行然后调用gt()

dat %>% 
  separate_rows(b) %>% 
  mutate(a = ifelse(duplicated(a), "", a)) %>% 
  gt()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

  • 0.3.0 中的新语法是 `fmt_markdown(columns = everything())` 或其他一些选择助手 (`starts_with("xyz"`) (3认同)