我正在使用angular-chart.js创建一个条形图,其中条形图根据列的值具有不同的颜色。
假设值超过 5 的列应为红色,否则为绿色。它工作正常,但是当我将鼠标悬停在其中一个条上时,它的颜色会发生变化(可能取决于条形图中前一个条的值),这很烦人。
我怎样才能摆脱这个问题?
HTML:
<head>
<script src="Chart.js"></script>
<script src="https://code.angularjs.org/1.3.15/angular.js"></script>
<script src="chart-angular.js"></script>
<script src="script.js"></script>
</head>
<body ng-controller="chartMaker">
<canvas id="locationBar" class="chart chart-bar" data="chartParams.votes"
labels="chartParams.listOfLocations" series="chartParams.series"
colours="chartParams.colours" options="chartParams.options">
</canvas>
</body>
</html>
我正在根据条件为每个条设置颜色
var graph = angular.module('graph', ['chart.js'], function(){});
graph.controller('chartMaker',["$scope",
function($scope){
$scope.chartParams = {
listOfLocations: ['Trenzalore','Earth','Caprica','Sol','Tau Ceti'],
votes: [[5,10,6,7,2,3]],
series: ["Nice Places"],
colours: [{fillColor:[]}],
options: {barShowStroke : false}
};
for(i=0;i<$scope.chartParams.votes[0].length;i++){
if($scope.chartParams.votes[0][i] > 5){
$scope.chartParams.colours[0].fillColor[i]="#FF0000"
}else{
$scope.chartParams.colours[0].fillColor[i]="#00FF00"
}
}
}
]);
你可以看到这个 plunker 有同样的问题在条形图中为条形设置不同的颜色
我在 SO 上阅读了一篇帖子,其中有人建议调用 update 方法,但是如何从我的 JS 文件中调用 update 方法?