R语言flexdashboard包gauge函数无法自定义颜色求助
解决flexdashboard仪表盘自定义颜色的问题
嘿,我懂你碰到的困扰了——flexdashboard自带的gauge组件确实默认只暴露了success、warning、danger这三个预设状态,但其实咱们完全可以突破这个限制,自定义任意颜色给仪表盘扇区!
你之前的代码里还有个小问题:扇区的区间数值和gauge的min/max不匹配(你设了max=100,但success区间写的是c(0, 0.4)),这会导致数值20直接落在danger区间里,显示的不是你预期的success状态。先把这个问题修正,再加上自定义颜色的配置,就能得到蓝色的仪表盘啦。
修改后的代码如下:
library(flexdashboard) gauge(20, min = 0, max = 100, symbol = "%", sectors = gaugeSectors( success = list(interval = c(0, 40), color = "#1E90FF"), # 这里用了自定义的蓝色(DodgerBlue) warning = list(interval = c(40, 60), color = "#FFD700"), # 保持金色作为警告色 danger = list(interval = c(60, 100), color = "#DC143C") # 保持深红色作为危险色 ) )
原理说明:
gaugeSectors()函数其实支持给每个状态传入一个列表,里面包含两个参数:
interval:指定该状态对应的数值区间(要和gauge的min/max对应)color:自定义该区间的颜色,可以用十六进制颜色码、RGB值或者颜色名称(比如"blue")
这样你就可以完全按照需求定义每个扇区的颜色,再也不用被预设的三种颜色限制啦!
内容的提问来源于stack exchange,提问作者JoYi
相关产品推荐
相关产品推荐

