d3.js - 如何在D3折线图中自定义色阶?

标签 d3.js colors

如何更改d3折线图中的线条颜色,例如在Mike Bostock的多系列D3 line chart中。

在他的示例图表中,Mike Bostock按照以下代码行使用D3内置的“ category10”色标:

var color = d3.scale.category10();


但是,假设我们希望将奥斯汀的线条改为蓝色,将纽约的线条设为红色,将旧金山的线条设为绿色,而不是内置的比例尺。应该足够简单吧?只需定义一个自定义色标:

var color = d3.scale.ordinal()
    .domain(["New York", "San Francisco", "Austin"])
    .range("#FF0000", "#009933" , "#0000FF");


我以为可以解决这个问题-但这会使所有系列变黑。我尝试过通过将类附加到每个系列来对CSS进行样式设置,但这没有用。

最佳答案

您仅缺少.range()中值的方括号-它需要一个数组作为参数。所以代码应该是

var color = d3.scaleOrdinal() // D3 Version 4
  .domain(["New York", "San Francisco", "Austin"])
  .range(["#FF0000", "#009933" , "#0000FF"]);


完整的示例here

关于d3.js - 如何在D3折线图中自定义色阶?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21208031/

相关文章:

javascript - d3 鼠标移动十字线边界

javascript - 避免 d3 轴标签中的 dx/dy 属性

iOS10 UIColor 变化

python - 检测到特定颜色后停止网络摄像头

opengl - 使用着色器时为 glutBitmapCharacter 设置光栅颜色

javascript - d3 圆环图弧检索错误数据

typescript - 无法使用@types/d3-tip : Argument of type 'Tooltip' is not assignable

javascript - 替换为 css outline-color : invert

linux - 如何在系统范围内更改颜色?

javascript - D3 svg 路径重叠