如何解决单击 rmarkdown::beamer_presentation 时突出显示 kable 表的表条目
在用 LaTex beamer presentation
生成的 rmarkdown::beamer_presentation
中,有没有办法在点击时突出显示 kableExtra
表格的特定单元格的内容?
MWE
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
latex_engine: xelatex
slide_level: 2
---
```{r}
library(dplyr)
library(kableExtra)
```
## Table
```{r table,echo = FALSE}
my_df <- mtcars[1:4,1:2]
my_table <- kable(my_df,booktabs = T,caption = "Table caption")
my_table
```
解决方法
建议的解决方案使用 kableExtra
的 row_spec/column_spec/cell_spec
functionality,为此必须加载多个 LaTex
包(例如,通过 header-includes: ...
)。
解决方案只剩下一件小事:表编号增加。
也就是说,第一帧上的表格编号为“1”,第二帧上的表格编号为“2”。
为了让事情看起来像添加的颜色是两个框架之间的唯一区别,理想情况下,两个表格的编号应该相同。
要根据需要为行/列/单元格着色,另请参阅 rmarkdown cookbook 以了解有关如何使用 row_spec/column_spec/cell_spec
的详细信息。
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
latex_engine: xelatex
slide_level: 2
header-includes:
- \usepackage{booktabs}
- \usepackage{array}
- \usepackage{multirow}
- \usepackage{wrapfig}
- \usepackage{float}
- \usepackage{colortbl}
- \usepackage{pdflscape}
- \usepackage{tabu}
- \usepackage{threeparttable}
- \usepackage{threeparttablex}
- \usepackage[normalem]{ulem}
- \usepackage{makecell}
---
```{r include=FALSE}
library(dplyr)
library(kableExtra)
```
## Table
```{r table,echo = FALSE}
my_df <- mtcars[1:4,1:2]
my_table <- kable(my_df,booktabs = T,caption = "Table caption")
my_table
```
## Table {.noframenumbering}
<!-- Add "{.noframenumbering}" such that the frame number is the same on both frames -->
```{r table-with-colored-cell,echo = FALSE}
special_cell <- c(rep(F,3),T)
colors_of_column_with_special_cell <- c(rep("black","red")
my_table %>%
column_spec(2,strikeout = special_cell,bold = special_cell,color = colors_of_column_with_special_cell)
```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。