AntV中的饼状图中的花瓣图中的ToolTip怎样修改

场景

官方花瓣图实例:

http://antv.alipay.com/zh-cn/g2/3.x/demo/pie/pie-platelets.html

官方示例效果:

AntV中的饼状图中的花瓣图中的ToolTip怎样修改_第1张图片

官方的提示:

AntV中的饼状图中的花瓣图中的ToolTip怎样修改_第2张图片

官方示例代码:




    
   
    饼图-花瓣图
    



实现

现在要修改为具体的业务需求的类型,如下:

AntV中的饼状图中的花瓣图中的ToolTip怎样修改_第3张图片

首先在设置数据源的地方添加百分比属性

 var data = [{
                    type: names1[0],
                    value:values1[0],
                    percent:values1[0]/(values1[0]+values1[1]+values1[2]+values1[3])
                }, {
                    type: names1[1],
                    value:values1[1],
                    percent:values1[1]/(values1[0]+values1[1]+values1[2]+values1[3])
                }, {
                    type: names1[2],
                    value:values1[2],
                    percent:values1[2]/(values1[0]+values1[1]+values1[2]+values1[3])
                }, {
                    type: names1[3],
                    value:values1[3],
                    percent:values1[3]/(values1[0]+values1[1]+values1[2]+values1[3])
                }
                ];

然后设置数据源时格式化百分比属性

chart.source(data, {
                    percent: {
                        formatter: function formatter(val) {
                            val = val * 100 + '%';
                            return val;
                        }
                    }});

设置提示的内容与格式

chart.tooltip({
                    showTitle: false,//关闭标题
                    itemTpl: '
  • {type}({value}): {percent}
  • '                 });

    给提示内容赋值

    上面的提示内容的模板中的>{type}({value}): {percent}值的来源是:

    chart.intervalStack().position('value').color('type').shape('platelet')
                    .tooltip('type*percent*value', function(type, percent,value) {
                        percent = percent * 100 + '%';
                        return {
                            type: type,
                            percent: percent,
                            value:value
                        };
                    });

    注:

    1.'type*percent*value'是相当于给后面的方法传递参数。

    2.return后面的部分是函数的返回值。左边的名字所对应的就是上面提示模板中相对应。

    你可能感兴趣的:(前端那些骚操作)