从入门到精通:轻松掌握ECharts图表制作技巧与案例解析

2026-08-22 0 阅读

引言

ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了一系列交互式图表,如折线图、柱状图、饼图等,用于数据可视化。掌握 ECharts 图表制作技巧,能够帮助开发者将复杂的数据以直观、美观的方式呈现给用户。本文将带你从入门到精通,轻松掌握 ECharts 图表制作技巧,并通过实际案例进行解析。

一、ECharts 入门

1.1 ECharts 简介

ECharts 是一个基于 HTML5 Canvas 的开源可视化库,可以轻松实现各种图表的绘制。它具有以下特点:

  • 丰富的图表类型:支持折线图、柱状图、饼图、散点图、地图等多种图表类型。
  • 交互性强:支持缩放、拖动、点击等交互操作。
  • 高度定制:可以通过配置项进行高度定制,满足不同需求。

1.2 ECharts 安装与引入

ECharts 支持多种安装方式,以下为常见方法:

  1. CDN 引入
<script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
  1. npm 安装
npm install echarts --save
  1. 直接下载: 从 ECharts 官网下载对应版本的库文件。

1.3 ECharts 基本使用

以下是一个简单的 ECharts 示例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>ECharts 示例</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
</head>
<body>
    <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM -->
    <div id="main" style="width: 600px;height:400px;"></div>
    <script type="text/javascript">
        // 基于准备好的dom,初始化echarts实例
        var myChart = echarts.init(document.getElementById('main'));

        // 指定图表的配置项和数据
        var option = {
            title: {
                text: 'ECharts 入门示例'
            },
            tooltip: {},
            legend: {
                data:['销量']
            },
            xAxis: {
                data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
            },
            yAxis: {},
            series: [{
                name: '销量',
                type: 'bar',
                data: [5, 20, 36, 10, 10, 20]
            }]
        };

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

二、ECharts 图表制作技巧

2.1 图表布局与样式

  • 布局:ECharts 支持多种布局方式,如水平布局、垂直布局等。可以通过 grid 配置项进行设置。
  • 样式:可以通过 itemStyleareaStylelineStyle 等配置项对图表元素进行样式定制。

2.2 数据处理

  • 数据格式:ECharts 支持多种数据格式,如数组、对象、JSON 等。
  • 数据转换:可以通过 dataTransform 配置项对数据进行转换。

2.3 交互与动画

  • 交互:ECharts 支持多种交互操作,如点击、拖动等。
  • 动画:可以通过 animation 配置项对图表进行动画效果设置。

三、ECharts 案例解析

3.1 柱状图案例

以下为一个柱状图案例,展示不同产品的销量情况:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>柱状图案例</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
</head>
<body>
    <div id="main" style="width: 600px;height:400px;"></div>
    <script type="text/javascript">
        var myChart = echarts.init(document.getElementById('main'));
        var option = {
            title: {
                text: '不同产品销量对比'
            },
            tooltip: {},
            legend: {
                data:['产品A','产品B','产品C']
            },
            xAxis: {
                data: ['产品1','产品2','产品3','产品4']
            },
            yAxis: {},
            series: [{
                name: '产品A',
                type: 'bar',
                data: [5, 20, 36, 10]
            }, {
                name: '产品B',
                type: 'bar',
                data: [10, 5, 20, 15]
            }, {
                name: '产品C',
                type: 'bar',
                data: [20, 15, 10, 5]
            }]
        };
        myChart.setOption(option);
    </script>
</body>
</html>

3.2 饼图案例

以下为一个饼图案例,展示不同部门的员工占比:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>饼图案例</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
</head>
<body>
    <div id="main" style="width: 600px;height:400px;"></div>
    <script type="text/javascript">
        var myChart = echarts.init(document.getElementById('main'));
        var option = {
            title: {
                text: '不同部门员工占比'
            },
            tooltip: {
                trigger: 'item'
            },
            legend: {
                orient: 'vertical',
                left: 'left',
                data: ['技术部','市场部','财务部','人事部']
            },
            series: [
                {
                    name: '访问来源',
                    type: 'pie',
                    radius: '50%',
                    data: [
                        {value: 335, name: '技术部'},
                        {value: 310, name: '市场部'},
                        {value: 234, name: '财务部'},
                        {value: 135, name: '人事部'}
                    ],
                    emphasis: {
                        itemStyle: {
                            shadowBlur: 10,
                            shadowOffsetX: 0,
                            shadowColor: 'rgba(0, 0, 0, 0.5)'
                        }
                    }
                }
            ]
        };
        myChart.setOption(option);
    </script>
</body>
</html>

四、总结

通过本文的学习,相信你已经对 ECharts 图表制作技巧有了初步的了解。在实际应用中,可以根据需求调整图表类型、布局、样式等,以达到最佳展示效果。希望本文能帮助你轻松掌握 ECharts 图表制作技巧,为你的数据可视化之路助力。

分享到: