Проценты не работают с функцией area() - форматируется
Я пытаюсь создать таблицу с процентным значением, используя area()
функция. Но на самом деле это не работает вообще (т.е. процентное значение). Кто-нибудь знает как это исправить?
#library(magrittr)
#library(dplyr)
#library(formattable)
#library(scales)
set.seed(123)
df <- data.frame(id = 1:10,
a = rnorm(10), b = rnorm(10), c = rnorm(10))
df <- df %>%
mutate(a = percent(a), b = percent(b), c = percent(c))
# show percentage value without using area function
formattable(df, list(a = color_tile("transparent", "pink"),
b = color_tile("transparent", "pink"),
c = color_tile("transparent", "pink")))
# does not show percentage value
formattable(df, list(area(col = a:c) ~ color_tile("transparent", "pink")))
sessionInfo()
[1] formattable_0.2 DT_0.1 scales_0.4.0
[4] tidyr_0.4.1 rCharts_0.4.5 dplyr_0.4.3
[7] shiny_0.13.2
2 ответа
Просто дополнение к комментарию Лилианы:
Вы также можете указать количество десятичных знаков при первом создании собственной функции, а именно:
percent2 <- function(x) {
x <- percent(x, 2)
}
Затем вы можете использовать это с тильдой с предопределенным количеством десятичных знаков.
formattable(df, list(area(col = a:c) ~ percent2))
Пока что наилучшие результаты, которые я получил, использовали этот код:
formattable(df, list(area(col = a:c) ~ percent))
Но я не знаю, как изменить количество цифр в номере:(