如果数据为负数,如何更改条形图中条形的颜色 - Angular 图表
How to change the color of the bar in barchart if the data is negative - Angular Charts
我创建了一个带有 Angular Charts.The HTML 的水平条形图,如下所示:
<canvas id="base" class="chart-horizontal-bar"
chart-data="vm.chartData"
chart-labels="vm.chartLabels">
</canvas>
JavaScript 变量如下所示:
var vm = this;
vm.chartData = [10,20,-30,40,50];
vm.chartLabels = ["A","B","C","D","E"];
我想将负数据的条形颜色更改为红色(在本例中为 -30),所有具有正数据的条形都应为绿色(10、20、40、50)。
提前致谢!!
我会遍历您的 chartData
并使用条件构建颜色数组。公平警告,我不熟悉 Angular 图表,因此 vm.chartColors
可能不是正确的语法,但这里的想法是成立的,即根据 [=21= 构建颜色数组] 数据中的数字。快速浏览 angularcharts.js 暗示您可以使用参数设置颜色以覆盖默认颜色。
var vm = this;
vm.chartData = [10,20,-30,40,50];
vm.chartLabels = ["A","B","C","D","E"];
var colors = [];
for(i=0; i < vm.chartData.length; i++) {
if (vm.chartData[i] < 0) {
colors[i] = "rgb(255,0,0)";
} else {
colors[i] = "rgb(0,255,0)";
}
}
vm.chartColors = colors;
console.log(vm.chartColors);
我创建了一个带有 Angular Charts.The HTML 的水平条形图,如下所示:
<canvas id="base" class="chart-horizontal-bar"
chart-data="vm.chartData"
chart-labels="vm.chartLabels">
</canvas>
JavaScript 变量如下所示:
var vm = this;
vm.chartData = [10,20,-30,40,50];
vm.chartLabels = ["A","B","C","D","E"];
我想将负数据的条形颜色更改为红色(在本例中为 -30),所有具有正数据的条形都应为绿色(10、20、40、50)。
提前致谢!!
我会遍历您的 chartData
并使用条件构建颜色数组。公平警告,我不熟悉 Angular 图表,因此 vm.chartColors
可能不是正确的语法,但这里的想法是成立的,即根据 [=21= 构建颜色数组] 数据中的数字。快速浏览 angularcharts.js 暗示您可以使用参数设置颜色以覆盖默认颜色。
var vm = this;
vm.chartData = [10,20,-30,40,50];
vm.chartLabels = ["A","B","C","D","E"];
var colors = [];
for(i=0; i < vm.chartData.length; i++) {
if (vm.chartData[i] < 0) {
colors[i] = "rgb(255,0,0)";
} else {
colors[i] = "rgb(0,255,0)";
}
}
vm.chartColors = colors;
console.log(vm.chartColors);