echarts 的dataset 如何构造嵌套饼图?

发布于 2022-09-11 20:33:20 字数 329 浏览 15 评论 0

如图,我想用dataset构造嵌套饼图,不是普通饼图。
https://www.echartsjs.com/exa...

https://www.echartsjs.com/exa...

那么dataset的source里面的数据应该如何映射?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

难如初 2022-09-18 20:33:20

刚好今天在弄这个,我的实现方案如下:
dataset习惯用json对象的集合:

dataset:{
                source:[
                    {key1:'直达',key2:335,key3:0},
                    {key1:'营销广告',key2:679,key3:0},
                    {key1:'搜索引擎',key2:1548,key3:0},
                    {key1:'直达',key2:0,key3:335},
                    {key1:'邮件营销',key2:0,key3:310},
                    {key1:'联盟广告',key2:0,key3:234},
                    {key1:'视频广告',key2:0,key3:135},
                    {key1:'百度',key2:0,key3:1048},
                    {key1:'谷歌',key2:0,key3:251},
                    {key1:'必应',key2:0,key3:147},
                    {key1:'其他',key2:0,key3:102}
                    ]
            },

第一个饼图系列相关配置:

"minShowLabelAngle": 1,//小于这个角度的扇区,不显示标签
        "encode": {
            "itemName": "key1",
            "value": "key2"
        }

第二个饼图系列相关配置:

"minShowLabelAngle": 1,//小于这个角度的扇区,不显示标签
        "encode": {
            "itemName": "key1",
            "value": "key3"
        }

minShowLabelAngle属性Echartsv4.3.0才支持哦;
若不设置minShowLabelAngle效果图:
图片描述
设置minShowLabelAngle效果图:
图片描述
完整代码:

{
    "tooltip": {
        "trigger": "item",
        "formatter": "{a} <br/>{b} : {c} ({d}%)"
    },
    "legend": {
        "orient": "vertical",
        "x": "left"
    },
    "dataset": {
        "source": [{
            "key1": "直达",
            "key2": 335,
            "key3": 0
        }, {
            "key1": "营销广告",
            "key2": 679,
            "key3": 0
        }, {
            "key1": "搜索引擎",
            "key2": 1548,
            "key3": 0
        }, {
            "key1": "直达",
            "key2": 0,
            "key3": 335
        }, {
            "key1": "邮件营销",
            "key2": 0,
            "key3": 310
        }, {
            "key1": "联盟广告",
            "key2": 0,
            "key3": 234
        }, {
            "key1": "视频广告",
            "key2": 0,
            "key3": 135
        }, {
            "key1": "百度",
            "key2": 0,
            "key3": 1048
        }, {
            "key1": "谷歌",
            "key2": 0,
            "key3": 251
        }, {
            "key1": "必应",
            "key2": 0,
            "key3": 147
        }, {
            "key1": "其他",
            "key2": 0,
            "key3": 102
        }]
    },
    "series": [{
        "name": "访问来源",
        "type": "pie",
        "selectedMode": "single",
        "radius": [0, 70],
        "itemStyle": {
            "normal": {
                "label": {
                    "position": "inside"
                },
                "labelLine": {
                    "show": false
                }
            }
        },
        "minShowLabelAngle": 1,
        "encode": {
            "itemName": "key1",
            "value": "key2"
        }
    }, {
        "name": "访问来源",
        "type": "pie",
        "radius": [100, 140],
        "minShowLabelAngle": 1,
        "encode": {
            "itemName": "key1",
            "value": "key3"
        }
    }]
}
缪败 2022-09-18 20:33:20

你贴的那第二个链接不就是嵌套饼图吗?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文