Замените категориальные значения цветами светофора - PullRequest
0 голосов
/ 01 декабря 2018

У меня есть некоторые категориальные значения, которые я хочу показать в таблице в виде красных, желтых и зеленых пятен в R или r-уценке.

Есть ли способ сделать это?Может быть, пакет значков, который позволит мне gsub текст для значка?Я покопался в интернете и поднялся с пустыми руками.Любые мысли приветствуются.

library(kableExtra)
dt <- mtcars[1:5, 1:6]
kable(dt) %>%
  kable_styling(full_width = F, font_size = 12) %>%
  row_spec(0, angle = -90)%>%
  row_spec(1:5, bold = F, color = "black")

enter image description here

1 Ответ

0 голосов
/ 01 декабря 2018

Вот пример, который использует формат html в knitr.Он использует функцию cell_spec для создания нового столбца с использованием значка и цвета.

library(kableExtra)
library(emojifont)
library(dplyr)

load.fontawesome()
options(knitr.table.format = 'html')

cylcols = function(cyl) {
    case_when(
        cyl == 4 ~ 'green',
        cyl == 6 ~ 'yellow',
        cyl == 8 ~ 'red'
    )
}

dt <- 
    mtcars[1:5, 1:6] %>% 
    mutate(symbol = fontawesome('fa-circle')) %>%
        mutate(symbol = cell_spec(symbol, 'html', color=cylcols(cyl))) %>%
        select(mpg, cyl=symbol, disp, hp, drat, wt)

kable(dt, escape = F) %>%
    kable_styling(full_width = F, font_size = 12) %>%
    row_spec(0, angle = -90) %>%
    row_spec(1:5, bold = F, color = "black") 

enter image description here

...