echarts柱状图、饼图实现数据联动

echarts柱状图和饼图通过鼠标点击实现数据联动


案例的gif展示图如下:


echarts两个柱状图和饼图echarts联动.gif

所有实现功能源码如下,注意在写js前引入包含所有echarts功能的插件api地址:

<!DOCTYPE html>
<html style="height: 100%">
<head>
    <meta charset="utf-8">
</head>
<body style="height: 100%; margin: 0">
    <div id="container" style="height: 100%"></div>
    <!-- 此处注意插件script引入 -->
    <script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/echarts.min.js"></script>
       <script type="text/javascript">
        var dom = document.getElementById("container");
        var myChart = echarts.init(dom);
        var app = {};
        option = null;
        option = {
            legend: {},
            tooltip: {
                trigger: 'axis',
                showContent: true,
            },
            dataset: {
                source: [
                    ['product', '2012', '2013', '2014', '2015', '2016', '2017'],
                    ['aa', 41.1, 30.4, 65.1, 53.3, 83.8, 98.7],
                    ['Milk Tea', 86.5, 92.1, 85.7, 83.1, 73.4, 55.1],
                    ['Cheese Cocoa', 24.1, 67.2, 79.5, 86.4, 65.2, 82.5],
                    ['Walnut Brownie', 55.2, 67.1, 69.2, 72.4, 53.9, 39.1]
                ]
            },
            xAxis: {
                type: 'category'
            },
            yAxis: {
                gridIndex: 0
            },
            grid: {
                top: '20%',
                right: "36%",
            },
            series: [{
                    type: 'bar',
                    stack: '总量',
                    smooth: true,
                    seriesLayoutBy: 'row'
                },
                {
                    type: 'bar',
                    smooth: true,
                    stack: '总量',
                    seriesLayoutBy: 'row'
                },
                {
                    type: 'bar',
                    smooth: true,
                    stack: '总量',
                    seriesLayoutBy: 'row'
                },
                {
                    type: 'bar',
                    smooth: true,
                    stack: '总量',
                    seriesLayoutBy: 'row'
                },
                {
                    type: 'pie',
                    id: 'pie',
                    radius: '40%',
                    center: ['86%', '50%'],
                    label: {
                        formatter: '{b}: {@2012} ({d}%)'
                    },
                    encode: {
                        itemName: 'product',
                        value: '2012',
                        tooltip: '2012'
                    }
                }
            ]
        };
        myChart.on('updateAxisPointer', function (event) {
            var xAxisInfo = event.axesInfo[0];
            if (xAxisInfo) {
                var dimension = xAxisInfo.value + 1;
                myChart.setOption({
                    series: {
                        id: 'pie',
                        label: {
                            formatter: '{b}: {@[' + dimension + ']} ({d}%)'
                        },
                        encode: {
                            value: dimension,
                            tooltip: dimension
                        }
                    }
                });
            }
        });
        myChart.setOption(option);
        if (option && typeof option === "object") {
            myChart.setOption(option, true);
        }
    </script>
</body>
</html>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、背景 Echarts.js目前已经提供了connect功能,只要图标的legend一样,那么就能实现联动。下面...
    kaiker阅读 41,523评论 11 20
  • 五岁的小瑞,和爸爸妈妈在玩游戏。玩一个他发明的游戏,游戏规则他说了算,他制定的规则都是利于自己的,让自己赢的。 爸...
    王彩琼阅读 268评论 0 1
  • 小贱人: 最近很忙吧,刚刚考完公务员,又要陪他考研了吧。 想想,有八个月了吧,好快,也有五个月没有...
    LeslieSparrow阅读 362评论 0 1
  • 《三体》读书报告 《三体》是波哥给我推荐的,以前我从没有听过它。了解后发现这在电子书书迷中是很出名的一本书,是国人...
    MissDoris阅读 305评论 0 0
  • 一套八册,大概两岁半的时候买的这套书,喜爱程度没有开车出发系列高,不过也算爱看的。 画风还是日本绘本那种比较写实温...
    杂粮粥阅读 235评论 0 0