Я не смог найти способ вручную установить границы условного форматирования, используя любую из функций formattable. Однако, похоже, что границы последовательно установлены на минимальное и максимальное значения для данного столбца, поэтому вы можете решить эту проблему путем жесткого кодирования двух строк, содержащих требуемые минимальные и максимальные значения, а затем скрыть их с помощью CSS следующим образом:
CSS:
/*
* www/styles.css
*/
table tr:nth-child(-n + 2) {
display: none;
}
R
library(shiny)
list1 <- c(0.0,1.0,0.2,0.8,0.5)
list2 <- c("", "", "element1", "element2", "element3")
df <- data.frame(list1, list2)
UI <- fluidPage(
includeCSS("www/styles.css"),
formattableOutput("table1")
)
Server <- function(input, output) {
output$table1 <- renderFormattable({
formattable(df, list(
list1 = color_tile("green", "red")
))
})
}
shinyApp(ui = UI, server = Server)
Просто обратите внимание, что это исправление будет работать, только если все значения, которые вы хотите отобразить, находятся в диапазоне от нуля до единицы. Если вы используете что-либо за пределами этого диапазона, границы будут сброшены до нового минимума / максимума.