Charts.js值依赖着色

时间:2015-04-16 16:30:14

标签: javascript charts

我想知道,如果可以使Charts.js根据点值是正还是负而改变填充颜色。

我正在为我的朋友新公司制作我的会计系统,我的图表显示了图表中的财务状况,如果我的收入低于0,它应该显示为红色,如果它变为正数,它应该显示为绿色。

所以在Charts.js中甚至可以根据图表从x轴开到哪一侧来更改图表填充颜色?

这是我需要获得的结果的photoshopped图像的链接。 http://i.stack.imgur.com/o7SJJ.jpg

1 个答案:

答案 0 :(得分:0)

这应该可行。

从呼叫返回服务器时,您将必须检查数据。检查该值是否为<0,然后将Red添加到数组中,如果> 0,则为绿色。

类似的东西:

const backgroundColours = [];

for (let i = 0; i < result.length; i++) {
            if (result[i].valueName <0) {
                backgroundColours.push(red());  
        } else {
        backgroundColours.push(green());
        }
 }


const red= function() {
    return 'rgb(255,0,0)';
};

const green = function() {
    return 'rgb(0,255,0)';
};

然后将其作为图表定义的一部分,例如:

data: {
                labels: .....,
                datasets: [
                    {
                        backgroundColor: backgroundColours,
                        data: ....,
                    },
                    ],
            }, ....