formattable :: color_bar, используемый с kable, вызывает переполнение текста - PullRequest
0 голосов
/ 17 апреля 2020

Я пытаюсь использовать formattable и kableExtra вместе, чтобы создать таблицу, в которой есть color_bar. Но кажется, что когда я использую определенные векторы чисел, текст столбца случайным образом перетекает в другие столбцы. Вот как выглядит моя результирующая таблица:

color_bar problem

Вы можете видеть, что первые 2 столбца имеют проблемы с выравниванием, но последний не имеет для некоторых причина.

Вот пример того, как сделать это с набором данных mtcars по этой ссылке: http://haozhu233.github.io/kableExtra/use_kableExtra_with_formattable.html

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

df <- mtcars[1:5, 1:4]
df[2,4] <- 2
df[4,4] <- 0.04
df %>%
  mutate(
    car = row.names(.),
    mpg = color_tile("white", "orange")(mpg),
    cyl = cell_spec(cyl, "html", angle = (1:5)*60, 
                    background = "red", color = "white", align = "center"),
    disp = ifelse(disp > 200,
                  cell_spec(disp, "html", color = "red", bold = T),
                  cell_spec(disp, "html", color = "green", italic = T)),
    hp = color_bar("lightgreen")(hp)
  ) %>%
  select(car, everything()) %>%
  kable("html", escape = F) %>%
  kable_styling("hover", full_width = T) %>%
  add_header_above(c(" ", "Hello" = 2, "World" = 2))

А вот как это выглядит:

mtcars example

...