Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 动态图改变线颜色_Javascript_Dygraphs - Fatal编程技术网

Javascript 动态图改变线颜色

Javascript 动态图改变线颜色,javascript,dygraphs,Javascript,Dygraphs,我想更改动态图表的线条颜色 有价值。 示例当我的数据大于2时,我想更改颜色 我尝试选择颜色,但只是改变点颜色 我做了一个决定 这是我的选项动态图: color: function (color, d) { if (typeof d.index === 'undefined') { return color; } var val = columns[0][d.index + 1]; if (val >= 0 && val <= 150) {

我想更改动态图表的线条颜色 有价值。
示例当我的数据大于2时,我想更改颜色

我尝试选择颜色,但只是改变点颜色

我做了一个决定

这是我的选项动态图:

color: function (color, d) {
    if (typeof d.index === 'undefined') { return color; }

    var val = columns[0][d.index + 1];

    if (val >= 0 && val <= 150) {
        color = 'green';
    } else if (val > 150 && val <= 300) {
        color = 'yellow';
    } else if (val > 300) {
        color = 'red';
    }

    return color;
}
颜色:函数(颜色,d){
if(typeof d.index=='undefined'){return color;}
var val=列[0][d.index+1];
如果(val>=0&&val 150&&val 300){
颜色=红色;
}
返回颜色;
}

正如您所发现的,您不能将
颜色设置为函数。不过,您可以使用稍微更通用的,它允许您为每个点绘制具有任何颜色的任何形状:

function coloredCircle(g, series, ctx, cx, cy, color, radius, idx) {
  var y = g.getValue(idx, 1);
  var pointColor = y < 5 ? 'green' : 'blue';
  ctx.save();
  ctx.fillStyle = pointColor;
  ctx.beginPath();
  ctx.arc(cx, cy, radius, 2 * Math.PI, false);
  ctx.closePath();
  ctx.fill();
}

g = new Dygraph(
    div, data,
    {
      series: {
        Y: {
          drawPointCallback: coloredCircle,
          pointSize: 5,
          drawPoints: true
        }
      }
    });
函数彩色圆(g、系列、ctx、cx、cy、颜色、半径、idx){
变量y=g.getValue(idx,1);
var pointColor=y<5?'green':'blue';
ctx.save();
ctx.fillStyle=pointColor;
ctx.beginPath();
ctx.弧(cx,cy,半径,2*Math.PI,假);
ctx.closePath();
ctx.fill();
}
g=新动态图(
数据处,
{
系列:{
Y:{
drawPointCallback:coloredCircle,
点数:5,
支取分数:正确
}
}
});

这是一个例子。有关
drawPointCallback

的更多示例,请参阅,非常感谢,您的库非常棒!