注意:示例仅供参考,若是实际场景和示例需求场景有所差别,有可能需要自行调整宏代码。
需求
在电子表格中一个柱图图形中实现其中的柱图根据数值改色,当柱图数值小于0、大于0的时候是不同的2种颜色。
思路
1)在excel中创建如下图所示电子表格,并插入Echarts图形,保存发布后,打开客户端
2)新建客户端宏
3)宏代码如下,在宏代码中所示设置小于0 的柱图的颜色
function main(chartView) { var chart = chartView.getChartObject(); var options = chart.getOptions(); var series = options.series; var datas = []; for (var i in series) { if (series[i].type == "bar") { debugger; datas = series[i].data; } } for (var i in datas) { if (parseInt(datas[i].displayValue) < 0) { datas[i].itemStyle = datas[i].itemStyle || {}; datas[i].itemStyle = { "normal": { "color": "#99CC33" } } //设置小于0的柱图的颜色 } } }
4)在宏代码中设置的是柱图数值小于0 的柱图显示颜色,对数值大于0的,可以通过电子表格中的产品设置界面设置。
5)最终在客户端显示效果如下