完成后如下图所示
1. Echart的使用
官网教程引入,根据教程可以很简单的完成实例的引入,我主要写关于百分率样式的配置
代码入下所示
1 | var option = { |
1.1 y轴的百分比显示1
2
3
4
5axisLabel: {
show: true,
interval: 'auto',
formatter: '{value} %'
}
1.2 柱形上的显示与多颜色的加入1
2
3
4
5
6
7
8
9
10
11
12
13itemStyle: {
normal: {
color: function(params) {
var colorList = CommonService.getChartBarColor();
return colorList[params.dataIndex % colorList.length];
},
label: {
show: true,
position: 'top',
formatter: '{b}\n{c}%'
}
}
}
2. 指令的使用
1 | <yunzhi-chart-bar data-chart-name = "chartName" data-chart-xdata="chartXData" data-chart-ymax="chartYMax" data-chart-ymin="chartYMin" data-chart-dar="chartDarData"></yunzhi-chart-bar> |
外部数据:图表名称,图标x轴,图表y轴,图表bar内容(数据)
在写指令是遇到问题是$watch
的多监听
解决如下1
2
3
4
5
6
7scope.$watch('[chartXdata, chartDar, chartName, chartYmin, chartYmax]', function(newValue) {
if (scope.chartDar) { // 防止第一次数据为空时加载图表
$timeout(function() {
self.setChart();
}, 1000);
}
}, true);
把要监听的对象放入数组中,进行多对监听