echarts 添加柱状图

2 篇文章 0 订阅
2 篇文章 0 订阅
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <div id="gdpBar" style="width: 350px; height: 280px;"></div>
    <script>
        let yDatas = [],
            datas = [],
            ColorList = []; // 置空
        gdps.forEach((gdp, index) => {
            if (index == curIndex) {
                let states = gdp.states;
                states.forEach(state => {
                    yDatas.push(state.name);
                    datas.push(state.gdp);
                    if (state.name == "中国") {
                        ColorList.push("rgba(178,8,1)");
                    } else {
                        ColorList.push("rgb(38,104,202)");
                    }
                })
            }
        })

        // // 基于准备好的dom,初始化echarts实例
        let myChart = echarts.init(document.getElementById('gdpBar'));
        let option = {
            tooltip: {
                trigger: 'axis',
                axisPointer: {
                    type: 'shadow'
                }
            },
            xAxis: {
                type: 'value',
                boundaryGap: [0, 0.01],
                axisLabel: {
                    show: true,
                    textStyle: {
                        fontSize: 11,
                        color: "#262522"
                    }
                }
            },
            yAxis: {
                type: 'category',
                splitLine: {
                    show: false
                }, //改设置不显示坐标区域内的y轴分割线
                // data: ["美国", "英国", "法国", "中国", "日本", "加拿大", "意大利", "印度", "澳大利亚", "巴西", "瑞典", "土耳其"]
                data: yDatas,
                splitNumber: 1,
                axisLabel: {
                    show: true,
                    textStyle: {
                        fontSize: 11,
                        color: "#262522"
                    }
                }
            },
            series: [{
                type: 'bar',
                barWidth: 12, // 柱子宽度
                data: datas,
                //配置样式
                itemStyle: {
                    //通常情况下:
                    normal: {
                        color: function (params) {
                            let colorList = ColorList;
                            return colorList[params.dataIndex];
                        }
                    },
                    //鼠标悬停时:
                    emphasis: {
                        color: 'rgba(178,8,1)'
                    }
                }
            }],
            grid: {
                top: 15,
                x: 65,
                x2: 30,
                y2: 30
            }
        };

        // 使用配置项和数据显示图表
        myChart.setOption(option);
    </script>
</body>

</html>

效果展示:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值