DataTables также применяет форматирование столбцов для фильтрации

При создании datatable с filter = 'top', а также использовании функции форматирования для столбца, форматирование не применяется к элементу управления фильтром для этого столбца. Есть ли способ отформатировать элементы управления фильтром?

Например, если у меня есть числа с плавающей запятой, отформатированные в процентах, ползунок в фильтре по-прежнему показывает числа с плавающей запятой.

library(DT)

my_data <- mtcars
my_data$wt_pctile <- trunc(rank(my_data$wt)) / length(my_data$wt)

datatable(my_data,
          filter = 'top') %>%
  formatPercentage('wt_pctile')

Диапазон процентного фильтра не указан в процентах


person Brian Stamper    schedule 02.10.2017    source источник
comment
Привет, Брайан. Вы когда-нибудь находили решение этой проблемы? У меня то же самое.   -  person Morten Nielsen    schedule 17.04.2019


Ответы (2)


Не уверен, есть ли способ это сделать. Обходной путь может быть умножением на 100:

my_data$wt_pctile <- my_data$wt_pctile * 100

И чем отображение в виде строки со знаком%:

datatable(my_data, filter = 'top') %>%
  formatString(suffix = "%",columns = "wt_pctile")
person Yanir Mor    schedule 22.07.2018

Я думаю, Янир на полпути! Что, если вы умножите на 100, а затем

datatable(my_data, filter = 'top') %>%
  formatCurrency(columns = "wt_pctile", 
  currency = "%", 
  before = FALSE)

Это предотвращает двойную или тройную% s при сортировке.

person dyrland    schedule 19.12.2019