Echarts3实例 叠加柱状图

前言

    堆叠柱状图本身是不难实现的,在项目上需求遇到在柱状图上边,添加统计label。

实现效果

在这里插入图片描述

实现代码

    思路:
        添加新的series放在最上层,让series隐藏,并设置label显示统计label
        tooltip隐藏最后一列

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        html,body{
            height: 100%;
        }
        *{
            margin: 0px;
            height: 0px;
        }
        #chartDiv{
            width: 650px;
            height: 370px;
            border: 1px solid red;
        }
    </style>
    <script src="js/echarts.min.js"></script>
</head>
<body>
<div id="chartDiv"></div>
    <script>
        var chartDiv = echarts.init(document.getElementById('chartDiv'));
        var option = option = {
            title:{
                text:"带统计的堆叠柱状图"
            },
            legend: {
                data:['百度','谷歌','必应','其他']
            },
            tooltip : {//过滤掉统计的series
                trigger: 'axis',
                axisPointer : {            // 坐标轴指示器,坐标轴触发有效
                    type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
                },
                formatter: function(params){
                    var res=params[0].name+"<br/>";
                    for(let i=0;i<params.length-1;i++){
                        res+=params[i].seriesName+":"+params[i].value+"<br/>"
                    }
                    return res;
                }
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '3%',
                containLabel: true
            },
            xAxis : [
                {
                    type : 'category',
                    data : ['周一','周二','周三','周四','周五','周六','周日']
                }
            ],
            yAxis : [
                {
                    type : 'value'
                }
            ],
            series : [

                {
                    name:'百度',
                    type:'bar',
                    barWidth : 35,
                    stack: '搜索引擎',
                    data:[620, 732, 701, 734, 1090, 1130, 1120]
                },
                {
                    name:'谷歌',
                    type:'bar',
                    stack: '搜索引擎',
                    data:[120, 132, 101, 134, 290, 230, 220]
                },
                {
                    name:'必应',
                    type:'bar',
                    stack: '搜索引擎',
                    data:[60, 72, 71, 74, 190, 130, 110]
                },
                {
                    name:'其他',
                    type:'bar',
                    stack: '搜索引擎',
                    data:[62, 82, 91, 84, 109, 110, 120]
                },
                {
                    name:'统计',
                    type:'bar',
                    stack: '搜索引擎',
                    data:[0.3, 0.6, 0.9, 0.84, 0.36, 0.11, 0.66],//模拟数据
                    label: {
                        normal: {
                            offset:[0, -10],//左右,上下
                            show: true,
                            position: 'insideLeft',
                            formatter:function(params){
                                if(params.data==0){
                                    return "0%";
                                }else{
                                    return params.data*100+"%";
                                }
                            },
                            fontSize:14,
                            fontWeight:'bold',
                            textStyle:{ color:'#199ED8' }
                        }
                    },
                    itemStyle:{
                        normal:{
                            color:'rgba(128, 128, 128, 0)'
                        }
                    },
                }
            ]
        };
        chartDiv.setOption(option);
    </script>

</body>
</html>
  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
echarts横向叠加柱状图是一种数据可视化的图表类型,主要用于展示不同类别的数据在同一时间段或同一维度上的对比情况。 echarts是一个基于JavaScript的开源数据可视化库,具有强大的绘图能力和丰富的图表类型。横向叠加柱状图是其中一种常用的图表类型,通过将不同类别的柱状图在水平方向上进行叠加,可以方便地对比它们之间的差异。 横向叠加柱状图的绘制需要准备好数据和配置参数。数据通常以数组的形式传入,每个元素表示一个柱状图的数据项。可以通过设置不同的属性,如name、type、barCategoryGap等,来控制横向叠加柱状图的样式和布局。 要绘制一张横向叠加柱状图,首先需要初始化一个echarts实例,并指定绘图的容器。然后,通过配置参数来定义横向叠加柱状图的各项属性,比如坐标轴、图例、标题等。最后,将前面准备好的数据传入echarts实例中,调用绘图方法即可。 横向叠加柱状图可以帮助我们更直观地比较多个类别的数据,在销售对比、市场份额、用户数量等方面有广泛应用。通过合理设计图表的颜色、标签和交互方式,可以使数据更加易于理解和传达,有助于分析和决策。 总之,横向叠加柱状图是一种常用的数据可视化工具,可以通过echarts库来绘制。在实际应用中,我们可以根据需求和数据特点来调整其样式和布局,以更好地呈现数据的对比情况。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值