D3 桑基图中更亮的节点颜色

Brighter node color in D3 sankey diagram

我希望 this sankey 图表中的蓝色比链接颜色更亮,但由于某些原因它适用于所有其他颜色而不是蓝色。菜鸟,在此先感谢您的帮助。

不工作的原因是因为在 RGB 蓝色 (0, 0, 255) 上调用更亮只会使蓝色通道更高 — 但它不能高于 255,所以结果是一样的。

解决方案是使用 HSL(就像在 .brighter(0.5) 之后添加 .formatHsl() 一样简单

所以而不是:

return d3.color(d.targetLinks[0].color).brighter(0.5);

应该是

return d3.color(d.targetLinks[0].color).brighter(0.5).formatHsl();

它奏效了。

这里有完整的解决方案和更多信息https://talk.observablehq.com/t/flow-o-matic-brighter-nodes/4856/2