gpt4 book ai didi

r - 以编程方式对数据表中的数字列设置颜色格式

转载 作者:行者123 更新时间:2023-12-04 17:40:02 25 4
gpt4 key购买 nike

我希望对每个数字列进行颜色格式化,以便根据每列的范围显示蓝色范围条。这是一张关于我想要实现的目标的照片。 enter image description here

#Here is the the table I have so far.
#I am adding filters to the columns. This works great

library(DT)
library(magrittr)
df = datatable(iris, filter = 'top', options = list(pageLength = 5, autoWidth = TRUE))

#I try to add the blue bars here to the first 2 numeric columns

df %>%formatStyle(names(df)[1:2],
background = styleColorBar(range(df[,1:2]), 'lightblue'),
backgroundSize = '98% 88%',
backgroundRepeat = 'no-repeat',
backgroundPosition = 'center')
Error in df[, 1:2] : incorrect number of dimensions

如果有一个自动将蓝色条放在所有数字列上的功能,那也很好。提前致谢

最佳答案

您可以改进以下几点:

  • 以编程方式定义数字列(传递 sapply(iris, is.numeric) 结果)。
  • 要格式化样式,您需要传递原始表格(iris 而不是 df)。 df 可能有不同的列,因为行名。
  • styleColorBar 也传递原始表而不是 df

代码:

library(magrittr)
library(DT)

# Specify numeric columns
foo <- sapply(iris, is.numeric)

datatable(iris, filter = 'top', options = list(pageLength = 5, autoWidth = TRUE)) %>%
formatStyle(names(iris)[foo],
background = styleColorBar(range(iris[, foo]), 'lightblue'),
backgroundSize = '98% 88%',
backgroundRepeat = 'no-repeat',
backgroundPosition = 'center')

结果:

enter image description here

关于r - 以编程方式对数据表中的数字列设置颜色格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54943418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com