学会ECharts图表制作:从入门到精通的教程与实战案例

2026-09-01 0 阅读

ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了一套丰富的图表类型,包括折线图、柱状图、饼图、散点图、地图、雷达图等,可以广泛应用于数据可视化领域。学会使用 ECharts 制作图表,不仅可以提高工作效率,还能让你的数据表达更加生动形象。本文将带你从入门到精通,一步步学习 ECharts 图表制作。

一、ECharts 入门

1.1 什么是 ECharts?

ECharts 是一个基于 JavaScript 的图表库,它提供了一系列丰富的图表类型,可以轻松实现各种数据可视化效果。ECharts 的特点如下:

  • 高性能:ECharts 使用 Canvas 和 SVG 渲染图表,性能优越。
  • 丰富的图表类型:支持折线图、柱状图、饼图、散点图、地图、雷达图等多种图表类型。
  • 易于使用:ECharts 提供了丰富的配置项,方便用户自定义图表样式和交互。
  • 开源免费:ECharts 是一个开源免费的项目,可以自由使用。

1.2 ECharts 的安装与配置

ECharts 可以通过 npm、CDN 等方式安装。以下是使用 CDN 方式引入 ECharts 的示例:

<script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>

二、ECharts 图表制作基础

2.1 ECharts 图表结构

ECharts 图表主要由以下几个部分组成:

  • 图表容器:用于放置图表的 HTML 元素。
  • 配置项:用于配置图表的样式、数据、交互等。
  • 图表实例:通过配置项创建的图表对象。

2.2 ECharts 基础配置

以下是一个简单的 ECharts 图表配置示例:

// 基于准备好的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);

2.3 ECharts 图表类型

ECharts 支持多种图表类型,以下列举一些常见类型:

  • 折线图:用于表示数据随时间或其他连续变量的变化趋势。
  • 柱状图:用于比较不同类别的数据。
  • 饼图:用于表示数据占比。
  • 散点图:用于表示两个变量之间的关系。
  • 地图:用于表示地理位置信息。
  • 雷达图:用于表示多变量数据的综合情况。

三、ECharts 图表制作进阶

3.1 ECharts 交互

ECharts 提供了丰富的交互功能,例如:

  • 鼠标悬停提示:显示数据详细信息。
  • 点击事件:自定义点击事件处理函数。
  • 数据动态更新:实时更新图表数据。

3.2 ECharts 高级配置

ECharts 支持丰富的配置项,以下列举一些高级配置:

  • 主题:自定义图表主题。
  • 颜色:自定义图表颜色。
  • 动画:自定义图表动画效果。
  • 标签:自定义图表标签样式。

四、实战案例

4.1 案例:制作一个动态折线图

以下是一个动态折线图的示例代码:

// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '动态折线图'
    },
    tooltip: {},
    xAxis: {
        data: []
    },
    yAxis: {},
    series: [{
        name: '销量',
        type: 'line',
        data: []
    }]
};

// 动态更新数据
function updateData() {
    var data = [Math.random() * 100, Math.random() * 100, Math.random() * 100];
    myChart.setOption({
        xAxis: {
            data: ['A', 'B', 'C']
        },
        series: [{
            data: data
        }]
    });
}

// 每秒更新一次数据
setInterval(updateData, 1000);

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

4.2 案例:制作一个地图热力图

以下是一个地图热力图的示例代码:

// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图热力图'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 100,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],           // 文本,默认为数值文本
        calculable: true
    },
    series: [{
        name: '热力图',
        type: 'heatmap',
        data: [
            [1, 1, 100],
            [1, 2, 90],
            [1, 3, 80],
            [2, 1, 70],
            [2, 2, 60],
            [2, 3, 50],
            [3, 1, 40],
            [3, 2, 30],
            [3, 3, 20],
            [4, 1, 10],
            [4, 2, 0]
        ]
    }]
};

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

五、总结

通过本文的学习,相信你已经对 ECharts 图表制作有了初步的了解。ECharts 是一个功能强大的图表库,掌握它可以帮助你更好地进行数据可视化。希望本文能帮助你从入门到精通 ECharts 图表制作。

分享到: