从入门到精通:全面掌握echarts图表制作技巧与实战案例

2026-08-28 0 阅读

ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图、地图等,非常适合用于数据可视化。无论是数据分析师、前端开发者还是数据爱好者,ECharts 都是一个非常有用的工具。本文将带你从入门到精通,全面掌握 ECharts 图表制作技巧与实战案例。

入门篇:ECharts 基础知识

1. ECharts 简介

ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图、地图等,非常适合用于数据可视化。ECharts 的特点如下:

  • 丰富的图表类型:ECharts 提供了多种图表类型,可以满足不同场景的需求。
  • 高度可定制:ECharts 支持高度定制,可以通过配置项调整图表的各个方面。
  • 跨平台:ECharts 支持多种平台,包括 PC、移动端、Web 等设备。
  • 开源免费:ECharts 是一个开源免费的项目,任何人都可以使用。

2. ECharts 安装与配置

安装

ECharts 可以通过 npm、yarn 或直接下载压缩包进行安装。

# 使用 npm 安装
npm install echarts

# 使用 yarn 安装
yarn add echarts

# 下载压缩包
https://echarts.apache.org/dist/echarts.min.js

配置

在 HTML 文件中引入 ECharts 文件,并创建一个用于渲染图表的 DOM 元素。

<!DOCTYPE html>
<html style="height: 100%">
<head>
    <meta charset="utf-8">
</head>
<body style="height: 100%; margin: 0">
    <div id="main" style="height: 100%"></div>
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
    <script type="text/javascript">
        // 初始化图表
        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 高级技巧

1. 动画与交互

ECharts 支持丰富的动画效果和交互功能,可以通过配置项实现。

动画

var option = {
    animation: true,
    series: [{
        type: 'bar',
        data: [10, 20, 30, 40, 50],
        animationDelay: function (idx) {
            return idx * 100;
        }
    }]
};

交互

myChart.on('click', function (params) {
    console.log(params.name, params.value);
});

2. 高级图表

ECharts 支持多种高级图表,如地图、雷达图、漏斗图等。

地图

var option = {
    title: {
        text: '世界人口分布'
    },
    tooltip: {
        trigger: 'item',
        formatter: '{a} <br/>{b}: {c} ({d}%)'
    },
    legend: {
        orient: 'vertical',
        left: 'left',
        data: ['亚洲', '非洲', '欧洲', '北美洲', '南美洲', '大洋洲']
    },
    series: [{
        name: '访问来源',
        type: 'pie',
        radius: '55%',
        center: ['50%', '60%'],
        data: [
            {value: 335, name: '亚洲'},
            {value: 310, name: '非洲'},
            {value: 234, name: '欧洲'},
            {value: 135, name: '北美洲'},
            {value: 1548, name: '南美洲'},
            {value: 1548, name: '大洋洲'}
        ],
        emphasis: {
            itemStyle: {
                shadowBlur: 10,
                shadowOffsetX: 0,
                shadowColor: 'rgba(0, 0, 0, 0.5)'
            }
        }
    }]
};

实战篇:ECharts 应用案例

1. 营销数据分析

使用 ECharts 可以为营销活动提供数据可视化支持,例如展示不同渠道的流量来源、用户地域分布等。

流量来源

var option = {
    title: {
        text: '流量来源分析'
    },
    tooltip: {
        trigger: 'axis',
        axisPointer: {
            type: 'shadow'
        }
    },
    legend: {
        data: ['搜索引擎', '直接访问', '邮件营销', '联盟广告', '视频广告', '其他']
    },
    grid: {
        left: '3%',
        right: '4%',
        bottom: '3%',
        containLabel: true
    },
    xAxis: {
        type: 'category',
        data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
    },
    yAxis: {
        type: 'value'
    },
    series: [
        {
            name: '搜索引擎',
            type: 'line',
            stack: '总量',
            data: [820, 932, 901, 934, 1290, 1330, 1320, 1300, 1200, 1100, 1000, 900]
        },
        {
            name: '直接访问',
            type: 'line',
            stack: '总量',
            data: [720, 832, 801, 834, 1190, 1230, 1220, 1200, 1100, 1000, 900, 800]
        },
        {
            name: '邮件营销',
            type: 'line',
            stack: '总量',
            data: [620, 732, 701, 734, 1090, 1130, 1120, 1100, 1000, 900, 800, 700]
        },
        {
            name: '联盟广告',
            type: 'line',
            stack: '总量',
            data: [420, 532, 501, 534, 890, 930, 920, 900, 800, 700, 600, 500]
        },
        {
            name: '视频广告',
            type: 'line',
            stack: '总量',
            data: [320, 432, 401, 434, 790, 830, 820, 800, 700, 600, 500, 400]
        },
        {
            name: '其他',
            type: 'line',
            stack: '总量',
            data: [220, 332, 301, 334, 690, 730, 720, 700, 600, 500, 400, 300]
        }
    ]
};

2. 财务分析

使用 ECharts 可以为财务报表提供数据可视化支持,例如展示不同产品的销售额、成本等。

销售额与成本

var option = {
    title: {
        text: '销售额与成本分析'
    },
    tooltip: {
        trigger: 'axis'
    },
    legend: {
        data: ['销售额', '成本']
    },
    xAxis: {
        type: 'category',
        data: ['产品A', '产品B', '产品C', '产品D', '产品E']
    },
    yAxis: {
        type: 'value'
    },
    series: [
        {
            name: '销售额',
            type: 'line',
            data: [120, 200, 150, 80, 70, 110, 130]
        },
        {
            name: '成本',
            type: 'line',
            data: [60, 90, 60, 80, 70, 100, 120]
        }
    ]
};

总结

ECharts 是一个功能强大的数据可视化库,通过本文的介绍,相信你已经对 ECharts 有了一定的了解。从入门到精通,你需要不断学习和实践。希望本文能帮助你更好地掌握 ECharts 图表制作技巧与实战案例。

分享到: