echarts中条形图展示格式化后的金额数值:series的label的formatter参数取值问题。

 series: [
                        {type: 'bar',
                            itemStyle : { normal: {color:'#46b9f7',label : {
                                show: true, 
                                position: 'top',
                                textStyle:{color:'#000000'},
                                formatter: function(param){
                                        var str = param.data+"";
                                        var strs= new Array();
                                        strs=str.split(",");
                                        return (parseFloat(strs[1]).toFixed(2) + '').replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g, '$&,');
                                    }
                                } 
                            }},
                        }
                    ]};
formatter: function(a,b,c){} 其中变量a、b、c在不同图表类型下代表数据含义为:

折线(区域)图、柱状(条形)图: a(系列名称),b(类目值),c(数值), d(无)

散点图(气泡)图 : a(系列名称),b(数据名称),c(数值数组), d(无)

饼图、雷达图 : a(系列名称),b(数据项名称),c(数值), d(百分比)

弦图 : a(系列名称),b(项1名称),c(项1-项2值),d(项2名称), e(项2-项1值)

力导向图 :

节点 : a(类目名称),b(节点名称),c(节点值)

边 : a(系列名称),b(源名称-目标名称),c(边权重), d(如果为true的话则数据来源是边)

但不知道为什么:param.c始终为NAN,但直接返回可以在图中显示,真操蛋

最后也是按上面的方式解决的,先转为字符串在分割系列名称和类目值,然后再拿到数值,最后再格式化金额返回。


posted @ 2019-11-05 17:27  请叫我靓仔  阅读(12371)  评论(0编辑  收藏  举报