nvd3折线图 - 按Y值设置线条的颜色

时间:2015-04-18 16:33:07

标签: d3.js nvd3.js linechart

我正在使用nvd3折线图,我希望在某些y值下的点数(让我们说y = 4)将是红色的,并且在它之上它们将是他们的nvd3颜色(橙色等等)。

我怎样才能达到这种效果?

1 个答案:

答案 0 :(得分:3)

这可以通过在线图数据的点上添加颜色值来完成。

因此,不要只有x和y对象:

{...{"y": "0.05885", "x": "1692"}, {"y": "0.05906", "x": "1693"}...}

您必须添加颜色值:

{...{"y": "0.05885", "x": "1692", "color": "#ff0000"}, 
{"y": "0.05906", "x": "1693","color": "#ff0000"}...}.

然后可以像往常一样访问和更改它。 对于所需的数据点,您可以制作颜色,例如根据需要变红。

编辑:

如果这不起作用,我认为不可能。问题是,线本身是一条实际线及其一个元素。如果查看生成的html代码,您将看到它的单个元素。因此,该行只能具有单一颜色属性。您可以做的是将其设置为渐变link。使颜色属性为例如:笔画:线性渐变(向右,红色,蓝色);当需要停止和开始时,请查看:link

访问line元素的方式是css:

#graphid g.nv-series-0 path.nv-line { //0 is the series number
     #color:red; //old
     stroke: linear-gradient(to right, red , blue); //new
}