从小白到高手:Echarts 图表教程视频,快速学会使用数据可视化神器

2026-11-14 0 阅读

在信息爆炸的时代,数据可视化成为了解读复杂数据的重要工具。Echarts 作为一款功能强大的数据可视化库,能够帮助我们轻松地将数据转化为图形,让信息更直观、更易于理解。本教程将带你从零开始,逐步学会使用 Echarts,让你快速成为数据可视化高手。

第一节:Echarts 初识

1.1 什么是 Echarts?

Echarts 是一款基于 JavaScript 的开源可视化库,由百度团队开发。它提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图、地图等,能够满足各种数据可视化的需求。

1.2 Echarts 的优势

  • 功能强大:支持丰富的图表类型和交互效果。
  • 易于使用:简单易学的 API,让开发者轻松上手。
  • 高性能:采用 Canvas 和 SVG 技术,渲染速度快。
  • 开源免费:遵守 Apache-2.0 协议,可免费商用。

第二节:Echarts 基础操作

2.1 环境搭建

首先,我们需要在项目中引入 Echarts。可以通过以下两种方式:

  • CDN 链接:在 HTML 文件中添加以下代码:
<script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
  • 本地下载:访问 Echarts 官网下载最新版本的 echarts.min.js 文件,并将其放入项目中。

2.2 创建图表

在 HTML 文件中,我们可以使用以下代码创建一个简单的柱状图:

<div id="main" style="width: 600px;height:400px;"></div>
<script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.3/echarts.min.js"></script>
<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>

这段代码创建了一个包含标题、提示框、图例、x 轴、y 轴和系列数据的柱状图。

2.3 配置项详解

  • title:图表标题。
  • tooltip:提示框配置。
  • legend:图例配置。
  • xAxis:x 轴配置。
  • yAxis:y 轴配置。
  • series:系列数据配置。

第三节:Echarts 高级图表

3.1 地图图表

地图图表可以展示地理信息数据,如人口分布、销售情况等。以下是一个简单的地图图表示例:

<div id="map" style="width: 600px;height:400px;"></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('map'));

    var option = {
        title: {
            text: '中国地图示例'
        },
        tooltip: {},
        legend: {
            orient: 'vertical',
            left: 'left',
            data:['北京','上海','广州','深圳']
        },
        visualMap: {
            min: 0,
            max: 1000,
            left: 'left',
            top: 'bottom',
            text: ['高','低'],           // 文本,默认为数值文本
            calculable: true
        },
        series: [
            {
                name: '销量',
                type: 'map',
                mapType: 'china',
                roam: true,
                label: {
                    show: false
                },
                data: [
                    {name: '北京',value: Math.round(Math.random() * 1000)},
                    {name: '上海',value: Math.round(Math.random() * 1000)},
                    {name: '广州',value: Math.round(Math.random() * 1000)},
                    {name: '深圳',value: Math.round(Math.random() * 1000)}
                ]
            }
        ]
    };

    myChart.setOption(option);
</script>

3.2 饼图图表

饼图可以展示数据的占比情况,以下是一个简单的饼图示例:

<div id="pie" style="width: 600px;height:400px;"></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('pie'));

    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:'视频广告'},
                    {value:1548, name:'搜索引擎'}
                ]
            }
        ]
    };

    myChart.setOption(option);
</script>

第四节:Echarts 高级技巧

4.1 动画效果

Echarts 支持丰富的动画效果,可以让图表更生动。以下是一个简单的动画效果示例:

<div id="animation" style="width: 600px;height:400px;"></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('animation'));

    var option = {
        title: {
            text: '动画效果示例'
        },
        tooltip: {},
        legend: {
            data:['销量']
        },
        xAxis: {
            data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20],
            markPoint: {
                data: [
                    {type: 'max', name: '最大值'},
                    {type: 'min', name: '最小值'}
                ]
            },
            markLine: {
                data: [
                    {type: 'average', name: '平均值'}
                ]
            }
        }]
    };

    myChart.setOption(option);
</script>

4.2 交互效果

Echarts 支持丰富的交互效果,如点击、缩放、拖拽等。以下是一个简单的交互效果示例:

<div id="interaction" style="width: 600px;height:400px;"></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('interaction'));

    var option = {
        title: {
            text: '交互效果示例'
        },
        tooltip: {},
        legend: {
            data:['销量']
        },
        xAxis: {
            data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20],
            itemStyle: {
                color: function(params) {
                    // 紫色
                    return '#6495ED';
                }
            }
        }]
    };

    myChart.setOption(option);

    // 点击事件
    myChart.on('click', function (params) {
        console.log(params.name + ' ' + params.value);
    });
</script>

第五节:Echarts 实战案例

5.1 疫情实时数据可视化

以下是一个疫情实时数据可视化的示例:

<div id="realtime" style="width: 600px;height:400px;"></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('realtime'));

    var option = {
        title: {
            text: '疫情实时数据可视化'
        },
        tooltip: {},
        legend: {
            data:['确诊病例','疑似病例','治愈病例','死亡病例']
        },
        xAxis: {
            data: ['湖北','广东','浙江','河南','湖南','四川']
        },
        yAxis: {},
        series: [
            {
                name: '确诊病例',
                type: 'bar',
                data: [722, 143, 121, 127, 100, 100]
            },
            {
                name: '疑似病例',
                type: 'bar',
                data: [599, 36, 29, 30, 24, 24]
            },
            {
                name: '治愈病例',
                type: 'bar',
                data: [68, 4, 5, 7, 3, 3]
            },
            {
                name: '死亡病例',
                type: 'bar',
                data: [2, 1, 1, 1, 1, 1]
            }
        ]
    };

    myChart.setOption(option);
</script>

5.2 股票行情可视化

以下是一个股票行情可视化的示例:

<div id="stock" style="width: 600px;height:400px;"></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('stock'));

    var option = {
        title: {
            text: '股票行情可视化'
        },
        tooltip: {},
        legend: {
            data:['股票A','股票B','股票C']
        },
        xAxis: {
            data: ['开盘价','最高价','收盘价','最低价']
        },
        yAxis: {},
        series: [
            {
                name: '股票A',
                type: 'line',
                data: [10, 12, 11, 9]
            },
            {
                name: '股票B',
                type: 'line',
                data: [11, 13, 12, 10]
            },
            {
                name: '股票C',
                type: 'line',
                data: [9, 11, 10, 8]
            }
        ]
    };

    myChart.setOption(option);
</script>

总结

通过本教程的学习,相信你已经掌握了 Echarts 的基本操作、高级图表、高级技巧和实战案例。希望这些知识能够帮助你更好地进行数据可视化,为你的工作和学习带来便利。当然,Echarts 还有更多高级功能和扩展,需要你在实际应用中不断学习和探索。祝你学习愉快!

分享到: