R:条件高亮kable
R: conditional highlighting kable
假设我有一个这样的矩阵:
set.seed(1234)
x = rnorm(10, mean=0, sd=1)
y = rnorm(10, mean=0, sd=1)
z = rnorm(10, mean=0, sd=1)
data=data.frame(rbind(x,y,z))
有什么方法可以在不指定列的情况下突出显示所有特定单元格(例如,在本例中为 >0)?
我的预期结果是这样的(只突出显示正值):
Example
在实际情况下,我有大约 30 列,如果我尝试 column_spec 逐一列出每一列,它就会耗尽:
data %>%
column_spec(X1, color = "red") %>%
column_spec(X2, color = "red")
......
谢谢!
您可以执行以下操作
---
title: "Untitled"
output:
html_document: default
---
```{r warning=FALSE, message=FALSE, echo=FALSE}
set.seed(1234)
x = rnorm(10, mean=0, sd=1)
y = rnorm(10, mean=0, sd=1)
z = rnorm(10, mean=0, sd=1)
data=data.frame(rbind(x,y,z))
library(knitr)
library(kableExtra)
library(tidyverse)
data %>%
mutate_all(~cell_spec(.x, color = ifelse(.x < 0, "red"," black"))) %>%
kable(escape = F) %>%
kable_styling()
```
这会产生
更新
或更改文本和背景颜色
---
title: "Untitled"
output:
html_document: default
---
```{r warning=FALSE, message=FALSE, echo=FALSE}
set.seed(1234)
x = rnorm(10, mean=0, sd=1)
y = rnorm(10, mean=0, sd=1)
z = rnorm(10, mean=0, sd=1)
data=data.frame(rbind(x,y,z))
library(knitr)
library(kableExtra)
library(tidyverse)
data %>%
mutate_all(~cell_spec(
.x,
color = ifelse(.x < 0, "white", "white"),
background = ifelse(.x < 0, "red"," black"))) %>%
kable(escape = F) %>%
kable_styling()
```
假设我有一个这样的矩阵:
set.seed(1234)
x = rnorm(10, mean=0, sd=1)
y = rnorm(10, mean=0, sd=1)
z = rnorm(10, mean=0, sd=1)
data=data.frame(rbind(x,y,z))
有什么方法可以在不指定列的情况下突出显示所有特定单元格(例如,在本例中为 >0)?
我的预期结果是这样的(只突出显示正值):
Example
在实际情况下,我有大约 30 列,如果我尝试 column_spec 逐一列出每一列,它就会耗尽:
data %>%
column_spec(X1, color = "red") %>%
column_spec(X2, color = "red")
......
谢谢!
您可以执行以下操作
---
title: "Untitled"
output:
html_document: default
---
```{r warning=FALSE, message=FALSE, echo=FALSE}
set.seed(1234)
x = rnorm(10, mean=0, sd=1)
y = rnorm(10, mean=0, sd=1)
z = rnorm(10, mean=0, sd=1)
data=data.frame(rbind(x,y,z))
library(knitr)
library(kableExtra)
library(tidyverse)
data %>%
mutate_all(~cell_spec(.x, color = ifelse(.x < 0, "red"," black"))) %>%
kable(escape = F) %>%
kable_styling()
```
这会产生
更新
或更改文本和背景颜色
---
title: "Untitled"
output:
html_document: default
---
```{r warning=FALSE, message=FALSE, echo=FALSE}
set.seed(1234)
x = rnorm(10, mean=0, sd=1)
y = rnorm(10, mean=0, sd=1)
z = rnorm(10, mean=0, sd=1)
data=data.frame(rbind(x,y,z))
library(knitr)
library(kableExtra)
library(tidyverse)
data %>%
mutate_all(~cell_spec(
.x,
color = ifelse(.x < 0, "white", "white"),
background = ifelse(.x < 0, "red"," black"))) %>%
kable(escape = F) %>%
kable_styling()
```