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

D3.js nvd3折线图-按Y值设置线条的颜色,d3.js,nvd3.js,linechart,D3.js,Nvd3.js,Linechart,我使用的是nvd3折线图,我希望某些y值下的点(假设y=4)为红色,高于该值的点为nvd3颜色(橙色等) 如何实现这种效果?这可以通过向折线图数据的点添加颜色值来实现 因此,与仅具有x和y对象不同: {...{"y": "0.05885", "x": "1692"}, {"y": "0.05906", "x": "1693"}...} 您必须添加颜色值: {...{"y": "0.05885", "x": "1692", "color": "#ff0000"}, {"y": "0.05906

我使用的是nvd3折线图,我希望某些y值下的点(假设y=4)为红色,高于该值的点为nvd3颜色(橙色等)


如何实现这种效果?

这可以通过向折线图数据的点添加颜色值来实现

因此,与仅具有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代码,您将看到它是一个元素。因此,线条只能具有单色属性。你能做的就是把它设置成一个渐变。使颜色属性为例如笔划:线性渐变(向右、红色、蓝色);,当然,如果需要时停止和启动,请查看以下内容:

访问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
}

这可以通过向折线图数据的点添加颜色值来实现

因此,与仅具有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代码,您将看到它是一个元素。因此,线条只能具有单色属性。你能做的就是把它设置成一个渐变。使颜色属性为例如笔划:线性渐变(向右、红色、蓝色);,当然,如果需要时停止和启动,请查看以下内容:

访问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
}

这可以通过向折线图数据的点添加颜色值来实现

因此,与仅具有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代码,您将看到它是一个元素。因此,线条只能具有单色属性。你能做的就是把它设置成一个渐变。使颜色属性为例如笔划:线性渐变(向右、红色、蓝色);,当然,如果需要时停止和启动,请查看以下内容:

访问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
}

这可以通过向折线图数据的点添加颜色值来实现

因此,与仅具有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代码,您将看到它是一个元素。因此,线条只能具有单色属性。你能做的就是把它设置成一个渐变。使颜色属性为例如笔划:线性渐变(向右、红色、蓝色);,当然,如果需要时停止和启动,请查看以下内容:

访问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
}
我试着这样做-它为我画了一条蓝线,而不是部分红色和部分黑色。我试着这样做-它为我画了一条蓝线,而不是部分红色和部分黑色。我试着这样做-它为我画了一条蓝线,而不是部分红色和部分黑色。我试着这样做-它为我画了一条蓝线,而不是部分红色和部分黑色。