我在 reactable 中创建了一个表格,该表格具有多个分组,并包括条件格式,以根据单元格的值作为总数的比例为单元格着色。但是,它将格式应用于所有值,而不仅仅是每个分组中的值。
例如,在下面链接的片段中,我希望将股票和债券分别格式化为单独的组(在这种情况下,us_sm_cap 应该被严重遮蔽,因为它的 5% 回报率略低于总回报率 10.5% 的一半股权) ,但它似乎将它们格式化为一个大组。
有什么想法可以让我做出反应以单独识别每个分组吗?示例代码也如下所示。提前感谢所有答案! 示例图像
library(reactable)
test_data <- data.frame(
BM = rep(c("Implementation", "Selection"), each = 6),
asset_class = rep(rep(c("Equity", "Bonds"), each = 3), 2),
sub_asset_class = rep(c("us_sm_cap", "world_ex_us","world_ex_us_sm_cap",
"ig_fixed", "ig_floating", "mixed_credit"), 2),
returns = c(.05,.03,.025,.15,.03,.06, 0.01, 0.02, 0.005,0.015, 0.025,0.02))
orange_pal <- function(x) rgb(colorRamp(c("#ffe4cc", "#ff9500"))(x), maxColorValue = 255)
reactable(test_data,
groupBy = c("BM", "asset_class"),
fullWidth = TRUE,
columns = list(
returns = colDef(aggregate = "sum",
format = colFormat(percent = TRUE, digits = 2),
style = function(value){
normalized <- (value - min(test_data$returns)) / (max(test_data$returns) -
min(test_data$returns))
color <- orange_pal(normalized)
list(background = color)
})
)
)