r - 如何在 gt 中的多列上使用相同的渐变?
问题描述
我正在创建这个表gt
。
列中的梯度有两个不同的比例——注意 Var2 中的 0.1424 比 Var1 中的 0.2206 更深蓝色。如何更改调色板以使两列具有相同的色标?所以在新表中,最深的蓝色将是两列中的最大值(.4199),最深的红色将是两列中的最小值(.0003),所有其他 8 个单元格都落在该光谱之间的某个位置?
这是我的数据/代码:
ex <- structure(list(Var1 = c(0.0015, 0.22058, 0.335, 0.3747612, 0.4199048
), Var2 = c(0.0002778, 0.1424279, 0.1233159, 0.1684, 0.1816663
)), class = "data.frame", row.names = c(NA, -5L))
ex %>%
gt() %>%
tab_header(title = md("Title")) %>%
fmt_number(
vars(`Var1`, `Var2`), decimals = 4) %>%
data_color(vars(`Var1`, `Var2`),
colors = scales::col_numeric(palette = c("red", "white", "blue"), domain = NULL)
)
解决方案
如果您指定域(根据docs),那应该可以解决您的问题,例如
library(gt)
ex <- structure(list(Var1 = c(0.0015, 0.22058, 0.335, 0.3747612, 0.4199048
), Var2 = c(0.0002778, 0.1424279, 0.1233159, 0.1684, 0.1816663
)), class = "data.frame", row.names = c(NA, -5L))
ex %>%
gt() %>%
data_color(vars(`Var1`, `Var2`),
scales::col_numeric(palette = c("red", "white", "blue"),
domain = c(0, 0.5)))
如果您更改配色方案,您可以更清楚地看到渐变变化,例如
ex %>%
gt() %>%
data_color(vars(`Var1`, `Var2`),
scales::col_numeric(palette = c("red", "white"),
domain = c(0, 0.5)))
推荐阅读
- python - 如果值不在字典中,则定义映射 - Python
- c# - DbContext 检测延迟加载
- angular - Angular:为多个令牌提供相同的实例
- amazon-web-services - 如何在 X-Ray 服务图中链接 lambda 函数调用
- java - 自动装箱/拆箱java Long类型作为返回值时出现意外的NullPointerException
- django - Django-admin ,在 Admin Inline (ChangeForm) 中显示图像缩略图
- android - Android Socket.io 发出两次而不是一次?
- linux-kernel - 从内核读取性能寄存器
- sql-server - SSIS 日志记录 - 捕获变量?
- postgresql - 团购:获取唯一用户的#和ID,某用户已与