注意 |
---|
示例仅供参考,若是实际场景和示例需求场景有所差别,有可能需要自行调整宏代码。 |
需求
在电子表格中一个柱图图形中实现其中的柱图根据数值改色,当柱图数值小于0、大于0的时候是不同的2种颜色。
思路
1)在excel中创建如下图所示电子表格,并插入Echarts图形,保存发布后,打开客户端
2)新建客户端宏
3)宏代码如下,在宏代码中所示设置小于0 和大于0的柱图的颜色
代码块 | ||||
---|---|---|---|---|
| ||||
function main(chartView) {
var chart = chartView.getChartObject();//获取echarts图形
var options = chart.getOptions();
var series = options.series;//获取数值信息
var datas = [];
for (var i in series) {
if (series[i].type == "bar") {
datas = series[i].data;//得到柱图数值数组
}
}
for (var j in datas) {//数组循环进行判断
datas[j].itemStyle = datas[j].itemStyle || {};
if (parseInt(datas[j].displayValue) < 0) {
//设置小于0的柱图的颜色
datas[j].itemStyle = {
"normal": {
"color": "#99CC33"
}
}
} else {
//设置大于0的柱图的颜色
datas[j].itemStyle = {
"normal": {
"color": "#FF5B71"
}
}
}
}
} |
4)最终在客户端显示效果如下
borderColor | #BBBBBB |
---|---|
bgColor | #F0F0F0 |
borderWidth | 1 |
borderStyle | solid |