Echarts横向堆叠柱状图和markLine怎么使用

发布时间:2022-06-06 10:38:57 作者:zzz
来源:亿速云 阅读:281

Echarts横向堆叠柱状图和markLine怎么使用

Echarts 是一个由百度开源的数据可视化库,它提供了丰富的图表类型和灵活的配置选项,能够帮助开发者快速构建出美观、交互性强的数据可视化图表。本文将详细介绍如何在 Echarts 中使用横向堆叠柱状图(Horizontal Stacked Bar Chart)以及如何结合 markLine 来实现更复杂的数据展示。

1. 横向堆叠柱状图简介

横向堆叠柱状图是一种将多个数据系列在水平方向上堆叠显示的柱状图。每个柱子的长度代表数据的大小,而柱子内部的堆叠部分则代表不同系列的数据。这种图表常用于展示多个类别的数据在不同维度上的分布情况。

2. 基本配置

首先,我们需要引入 Echarts 库,并创建一个容器来放置图表。以下是一个简单的 HTML 结构:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Horizontal Stacked Bar Chart with markLine</title>
    <script src="https://cdn.jsdelivr.net/npm/echarts@5.3.2/dist/echarts.min.js"></script>
</head>
<body>
    <div id="main" style="width: 600px;height:400px;"></div>
    <script>
        // 在这里编写 Echarts 配置
    </script>
</body>
</html>

3. 配置横向堆叠柱状图

接下来,我们将在 script 标签中编写 Echarts 的配置代码。以下是一个简单的横向堆叠柱状图的配置示例:

var myChart = echarts.init(document.getElementById('main'));

var option = {
    tooltip: {
        trigger: 'axis',
        axisPointer: {
            type: 'shadow'
        }
    },
    legend: {
        data: ['系列1', '系列2', '系列3']
    },
    grid: {
        left: '3%',
        right: '4%',
        bottom: '3%',
        containLabel: true
    },
    xAxis: {
        type: 'value'
    },
    yAxis: {
        type: 'category',
        data: ['类别1', '类别2', '类别3', '类别4', '类别5']
    },
    series: [
        {
            name: '系列1',
            type: 'bar',
            stack: '总量',
            data: [120, 132, 101, 134, 90]
        },
        {
            name: '系列2',
            type: 'bar',
            stack: '总量',
            data: [220, 182, 191, 234, 290]
        },
        {
            name: '系列3',
            type: 'bar',
            stack: '总量',
            data: [150, 232, 201, 154, 190]
        }
    ]
};

myChart.setOption(option);

3.1 配置解析

4. 使用 markLine 添加标记线

markLine 是 Echarts 中用于在图表中添加标记线的功能。我们可以通过 markLine 来标记某些特定的数据点或范围。以下是如何在横向堆叠柱状图中使用 markLine 的示例:

var option = {
    // 其他配置保持不变...
    series: [
        {
            name: '系列1',
            type: 'bar',
            stack: '总量',
            data: [120, 132, 101, 134, 90],
            markLine: {
                data: [
                    { type: 'average', name: '平均值' },
                    { yAxis: '类别3', name: '标记线' }
                ]
            }
        },
        {
            name: '系列2',
            type: 'bar',
            stack: '总量',
            data: [220, 182, 191, 234, 290]
        },
        {
            name: '系列3',
            type: 'bar',
            stack: '总量',
            data: [150, 232, 201, 154, 190]
        }
    ]
};

4.1 配置解析

5. 完整示例

将上述配置整合在一起,完整的代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Horizontal Stacked Bar Chart with markLine</title>
    <script src="https://cdn.jsdelivr.net/npm/echarts@5.3.2/dist/echarts.min.js"></script>
</head>
<body>
    <div id="main" style="width: 600px;height:400px;"></div>
    <script>
        var myChart = echarts.init(document.getElementById('main'));

        var option = {
            tooltip: {
                trigger: 'axis',
                axisPointer: {
                    type: 'shadow'
                }
            },
            legend: {
                data: ['系列1', '系列2', '系列3']
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '3%',
                containLabel: true
            },
            xAxis: {
                type: 'value'
            },
            yAxis: {
                type: 'category',
                data: ['类别1', '类别2', '类别3', '类别4', '类别5']
            },
            series: [
                {
                    name: '系列1',
                    type: 'bar',
                    stack: '总量',
                    data: [120, 132, 101, 134, 90],
                    markLine: {
                        data: [
                            { type: 'average', name: '平均值' },
                            { yAxis: '类别3', name: '标记线' }
                        ]
                    }
                },
                {
                    name: '系列2',
                    type: 'bar',
                    stack: '总量',
                    data: [220, 182, 191, 234, 290]
                },
                {
                    name: '系列3',
                    type: 'bar',
                    stack: '总量',
                    data: [150, 232, 201, 154, 190]
                }
            ]
        };

        myChart.setOption(option);
    </script>
</body>
</html>

6. 总结

通过本文的介绍,我们了解了如何在 Echarts 中配置横向堆叠柱状图,并使用 markLine 来添加标记线。Echarts 提供了丰富的配置选项,开发者可以根据实际需求灵活调整图表的样式和功能。希望本文能帮助你在实际项目中更好地使用 Echarts 进行数据可视化。

推荐阅读:
  1. Python中堆叠柱状图怎么绘制
  2. Python如何绘制堆叠柱状图

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

echarts

上一篇:怎么使用Python实现员工信息管理系统

下一篇:SpringCloud如何使用Feign实现动态路由操作

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》