Angular and ChartJS colors
Angular and ChartJS colors
我使用的是Angular chart js。有人知道如何每隔一行切换图表的颜色吗。
这是我的标记:
<canvas ng-if="hasStats" id="pie" class="chart chart-pie"
chart-type="Pie"
chart-colours=colors
chart-data="data"
chart-labels="labels"
chart-legend="true">
</canvas>
这是我的js:
$scope.labels = ["label 1", "label 2", "label 3"];
$scope.data = [300, 200, 500];
$scope.colors = [{
fillColor: 'rgba(59, 89, 152,0.2)',
strokeColor: 'rgba(59, 89, 152,1)',
pointColor: 'rgba(59, 89, 152,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(59, 89, 152,0.8)'
},
{
fillColor: 'rgba(0, 132, 180,0.2)',
strokeColor: 'rgba(0, 132, 180,1)',
pointColor: 'rgba(0, 132, 180,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(0, 132, 180,0.8)'
},
{
fillColor: 'rgba(233, 30, 99,0.2)',
strokeColor: 'rgba(233, 30, 99,1)',
pointColor: 'rgba(233, 30, 99,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(233, 30, 99,0.8)'
}];
标记在表中。我想切换配色方案以匹配我的行。奇数行是一种配色方案,偶数行是另一种配色方式。
更新:
可能是这样的:
$scope.colorsOdd = [{ // facebook blue
fillColor: 'rgba(59, 89, 152,0.2)',
strokeColor: 'rgba(59, 89, 152,1)',
pointColor: 'rgba(59, 89, 152,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(59, 89, 152,0.8)'
},
{ // twitter blue
fillColor: 'rgba(0, 132, 180,0.2)',
strokeColor: 'rgba(0, 132, 180,1)',
pointColor: 'rgba(0, 132, 180,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(0, 132, 180,0.8)'
},
{ // mav
fillColor: 'rgba(233, 30, 99,0.2)',
strokeColor: 'rgba(233, 30, 99,1)',
pointColor: 'rgba(233, 30, 99,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(233, 30, 99,0.8)'
}];
$scope.colorsEven = [{ // facebook blue
fillColor: 'rgba(59, 89, 152,0.2)',
strokeColor: 'rgba(59, 89, 152,1)',
pointColor: 'rgba(59, 89, 152,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(59, 89, 152,0.8)'
},
{ // twitter blue
fillColor: 'rgba(0, 132, 180,0.2)',
strokeColor: 'rgba(0, 132, 180,1)',
pointColor: 'rgba(0, 132, 180,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(0, 132, 180,0.8)'
},
{ // teal
fillColor: 'rgba(91, 192, 222,0.2)',
strokeColor: 'rgba(91, 192, 222,1)',
pointColor: 'rgba(91, 192, 222,1)',
pointStrokeColor: '#fff',
pointHighlightFill: '#fff',
pointHighlightStroke: 'rgba(91, 192, 222,0.8)'
}];
我只是想不出在它们之间切换的最佳方式
更新2:
<td rowspan="5" width="200">
<div class="ng-scope" ng-controller="AmbasPieCtrl" ng-init="init(data)" style="width: 250px;">
<canvas ng-if="hasStats" id="pie" class="chart chart-pie"
chart-type="Pie"
chart-colours=colors
chart-data="data"
chart-labels="labels"
chart-legend="true">
</canvas>
<div ng-if="!hasStats" class="text-center">
<h4>No stats found</h4>
</div>
</div>
</td>
在@ewizard的帮助下,我能够让它正常工作。
这是修改后的标记:
<div class="ng-scope" ng-controller="AmbasPieCtrl" ng-init="init(data)" style="width: 250px;">
<div ng-if="hasStats">
<div ng-hide="$odd">
<canvas id="pie" class="chart chart-pie"
chart-type="Pie"
chart-colours=colorsEven
chart-data="data"
chart-labels="labels"
chart-legend="true">
</canvas>
</div>
<div ng-hide="$even">
<canvas ng-if="hasStats" id="pie" class="chart chart-pie"
chart-type="Pie"
chart-colours=colorsOdd
chart-data="data"
chart-labels="labels"
chart-legend="true">
</canvas>
</div>
</div>
<div ng-if="!hasStats" class="text-center">
<h4>No stats found</h4>
</div>
</div>
相关文章:
- 如何在Chartjs中制作整数比例
- 使用ChartJS创建图表栏
- ChartJS v2:点击坐标的比例值(时间比例)
- 如何使用chartjs设置条形图中每个条形图的颜色
- 未捕获的IndexSizeError:ChartJS
- Chartjs工具提示换行
- 如何在chartjs中呈现悬停时的垂直线
- 在 Chartjs v2 极坐标图中重现错误,未绘制所有提供的数据
- 向ChartJS数据集添加其他属性
- 如何更改chartjs模板上的轴、标题、图例格式
- ChartJS - remove axis?
- 如何在初始化后检索ChartJS实例
- chartJs with MySQL and PHP
- Using Createjs and Chartjs
- Angular and ChartJS colors
- 如何为chart.js(chartjs.org)中的所有图表类型添加标签/图例
- Chartjs未显示在Foundation5选项卡中
- 如何使用ChartJS创建圆角矩形
- react chartjs错误无法读取属性'图表'的未定义
- 在chartjs的条形图中添加一个点击事件