ECharts饼图显示人民币符号千分位逗号隔开

  今天给客户做个报表,客户是意大利的人,要求饼图显示千分位和人民币符号,不要小数点,ecahrts默认满足不了要求只能自己写方法处理了,直接上代码

title: {
                    text: '产品销量占比',
                    left: 'center'
                },
                tooltip: {
                    trigger: 'item',
                    formatter:function (params) {
                        var data=params.data;
                        var val=parseInt(data.value);
                        return data.name+':¥'+vm.formatNum(val)+'('+params.percent+'%)'
                     }
                },
                legend: {
                    type: 'scroll',
                    orient: 'vertical',
                    right: 10,
                    top: 20,
                    bottom: 20,
                    data: [],
                    selected: true
                },
                series: [
                    {
                        name: '产品',
                        type: 'pie',
                        radius: '55%',
                        center: ['40%', '50%'],
                        label: {
                            normal: {
                                formatter: '{d}%'
                            }
                        },
                        data: [],
                        emphasis: {
                            itemStyle: {
                                shadowBlur: 10,
                                shadowOffsetX: 0,
                                shadowColor: 'rgba(0, 0, 0, 0.5)'
                            }
                        }
                    }
                ]

用到的vm.formatNum代码如下

vm.formatNum=function(strNum) {
            if(strNum.length <= 3) {
                return strNum;
            }
            if(!/^(\+|-)?(\d+)(\.\d+)?$/.test(strNum)) {
                return strNum;
            }
            var a = RegExp.$1,
                b = RegExp.$2,
                c = RegExp.$3;
            var re = new RegExp();
            re.compile("(\\d)(\\d{3})(,|$)");
            while(re.test(b)) {
                b = b.replace(re, "$1,$2$3");
            }
            return a + "" + b + "" + c;
        }

注意:上面代码里面的data我是在外面赋值的,主要方法就是formatter对应的方法

下面是效果图

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值