Chart.js-PieChart为特定数据集元素定义了背景色

时间:2019-01-30 15:27:52

标签: javascript chart.js background-color

社区

我正在尝试为Chart.js-PieChart的每个特定数据集元素定义背景。

例如:数据集最多包含3个元素:好,正常和坏。但是它也可以只有两个甚至一个。

pieChartData () {
    let dataset = []
    let labels = []
    let bgColor = [
        'green',
        'yellow',
        'red'
    ]
    for (var key in this.accountProfile.categories) {
        if (this.accountProfile.categories.hasOwnProperty(key)) {
            labels.push(key)
            dataset.push(this.accountProfile.categories[key].volume)
        }
    }
    return { 
        labels: labels,
        datasets: [
            { 
                data: dataset,
                backgroundColor: bgColor
            }
        ]
    }
}

我希望拥有: 和绿色一样好 正常为黄色 坏如红色

但是如果我的数据集只有正常和不良,颜色就会混合起来,正常是绿色而不是黄色,不良是黄色而不是红色,依此类推。

任何帮助将不胜感激。 谢谢,J

1 个答案:

答案 0 :(得分:1)

您可以定义数组,其中颜色是值,好,坏和正常是键,请参见下一个:

let chartColors = [];
chartColors['good'] = 'green';
chartColors['bad'] = 'red';
chartColors['normal'] = 'yellow';

然后下一步是添加新的数组变量,在该变量中,您将按与标签相同的方式进行推送:

someColorVar.push(chartColors[key]); 

然后将bgcolor替换为someColorVar