首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >huxtable中的print_md更改表格格式

huxtable中的print_md更改表格格式
EN

Stack Overflow用户
提问于 2021-04-15 01:37:54
回答 1查看 59关注 0票数 0

我正在使用huxtable包在bookdown中呈现的PDF中创建表格。表格的格式完全按照我想要的方式设置,直到我运行print_md命令,之后,一个边框从列名下面上移到标题下。此外,页眉从居中位置移动到右对齐。看看这个:

代码语言:javascript
复制
df <- data.frame(
  "colname1" = c("something indicator"),
  "colname2" = "[Something](http://www.overleaf.com)",
  "colname3" = "[Something again](http://www.overleaf.com)")

df <- df %>% 
  as_hux() %>%
      theme_basic() %>% 
      set_tb_padding(2)

df <- df %>% 
  set_contents(1, 2:3, c("colname2", "colname3"))  %>% 
  insert_row("", "Header", "Header", after = 0) %>% 
  merge_cells(1, 2:3) %>% 
  set_align(1, everywhere, "center") %>% 
  set_tb_padding(1, everywhere, 0) %>%
  set_bold(1, everywhere)
df

这就给出了:

表的格式正确。但。您会注意到URL的格式不正确。它应该只显示括号中的部分,当单击该部分时,会将您带到圆括号中的站点。

这可以通过下面的代码来解决:

代码语言:javascript
复制
df %>% print_md() 

这就给出了:

现在URL看起来应该是正确的,但是边框错误地上移了一行,并且"Header“现在是右对齐而不是居中对齐。我如何阻止这种情况的发生?

EN

回答 1

Stack Overflow用户

发布于 2021-04-15 01:45:45

不要问我为什么它能工作。但将print_md()更改为set_markdown()解决了边界和对齐问题。

编辑:我将@dash2的评论添加到这个答案中。

print_md()造成问题的原因是它将表转换为markdown格式,然后R Markdown读取并生成一个表。因此,一些特征(对齐)会在翻译过程中丢失。最好以预期的输出格式打印表格,可以是Latex、HTML或您正在使用的任何格式,而不是markdown。

但是带有标记超链接的单元格仍然需要被尊重- print_md()是错误的方式。相反,请使用set_markdown()。这将确保在huxtable本身内,在打印表格之前,具有标记代码的单元格被解释为标记。然后,打印的表格将保留所需的格式。

感谢@dash2创建了一个如此强大的包!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67096546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档