小工具知识网

当前位置: 首页 > 行业知识 > ECharts实现数据可视化入门教程(超详细),你真的了解前端系统启动流程吗

行业知识

ECharts实现数据可视化入门教程(超详细),你真的了解前端系统启动流程吗

2026-11-07 22:55:52 来源:互联网转载

name: ‘销量’,

type: ‘bar’,

data: [5, 20, 36, 10, 10, 20]

}]

};

//5.将配置项设置给echarts实例对象,使用刚指定的配置项和数据显示图表。

myChart.setOption(option);

效果展示

ECharts的基础配置

======================================================================

在官网给出了我们许多示例:链接

我们都可以直接拿来用,但是里面的一些配置我们可以根据自己的需求来修改,所以我们需要了解ECharts的基础配置。

主要配置(常用的)

官网配置项参考文档:地址

需要了解的主要配置:series xAxis yAxis grid tooltip title legend color

  • series
    – **系列列表。每个系列通过 `type` 决定自己的图表类型**  
    – **通俗的理解:图标数据,指定什么类型的图标,可以多个图表重叠。**
    • xAxis:直角坐标系 grid 中的 x 轴
      – **boundaryGap: 坐标轴两边留白策略 true,这时候刻度只是作为分隔线,标签和数据点都会在两个刻度之间的带(band)中间。**
      • yAxis:直角坐标系 grid 中的 y 轴
        • grid:直角坐标系内绘图网格。
          • title:标题组件
            • tooltip:提示框组件
              • legend:图例组件
                • color:调色盘颜色列表
                  • stack:数据堆叠,同个类目轴上系列配置相同的stack值后 后一个系列的值会在前一个系列的值上相加。

                    关于更多的配置项参考官方文档,十分具体。

                    案例讲解

                    接下来,通过修改官方示例中的例子折线图堆叠,来熟悉配置项。

                    修改前的样式:

                    修改后的代码:

                    option = {

                    //设置线条的颜色,后面是个数组

                    color:[‘pink’,‘red’,‘green’,‘blue’,‘gray’],

                    //设置图表标题

                    title: {

                    text: ‘折线图堆叠1233标题’

                    },

                    //图表的提示框组件

                    tooltip: {

                    //触发方式 - 坐标轴

                    trigger: ‘axis’

                    },

                    //图例组件

                    legend: {

                    //series有name了,这里的data可以删除掉

                    data: [‘邮件营销’, ‘联盟广告’, ‘视频广告’, ‘直接访问’, ‘搜索引擎’]

                    },

                    //网格配置 grid可以控制线形图 柱状图 图标大小

                    grid: {

                    left: ‘3%’,

                    right: ‘4%’,

                    bottom: ‘3%’,

                    //是否显示刻度标签

                    containLabel: true

                    },

                    //工具箱组件,可以另存为图片等功能

                    toolbox: {

                    feature: {

                    saveAsImage: {}

                    }

                    },

                    //设置x轴的相关配置

                    xAxis: {

                    type: ‘category’,

                    //线条和y轴是否有缝隙

                    boundaryGap: false,

                    data: [‘周一’, ‘周二’, ‘周三’, ‘周四’, ‘周五’, ‘周六’, ‘周日’]

                    },

                    //设置y轴的相关配置

                    yAxis: {

                    type: ‘value’

                    },

                    //系列图表配置,决定显示那种类型的图表

                    series: [

                    {

                    name: ‘邮件营销’,

                    type: ‘line’,

                    //总量,后面的会堆叠前面的累加起来,删除掉就会折叠了,一般不需要

                    //stack: ‘总量’,

                    data: [120, 132, 101, 134, 90, 230, 210]

                    },

                    {

                    name: ‘联盟广告’,

                    type: ‘line’,

                    //stack: ‘总量’,

                    data: [220, 182, 191, 234, 290, 330, 310]

                    },

                    {

                    name: ‘视频广告’,

                    type: ‘line’,

                    //stack: ‘总量’,

                    data: [150, 232, 201, 154, 190, 330, 410]

                    },

                    {

                    name: ‘直接访问’,

                    type: ‘line’,

                    //stack: ‘总量’,

                    data: [320, 332, 301, 334, 390, 330, 320]

                    },

                    {

                    name: ‘搜索引擎’,

                    type: ‘line’,

                    //stack: ‘总量’,

                    data: [520, 932, 901, 934, 1290, 1330, 1320]

                    }

                    ]

                    };

                    修改后的样式:

                    补充

                    ============================================================

                    示例链接


                    除了上面提到的官网给出好多示例的链接:点这里

                    还有一个可以作为补充:Gallery

                    立即执行函数


                    为了防止变量污染,减少命名冲突,我们可以采用立即执行函数的写法,因为立即执行函数里的变量都是局部变量。

                    我们需要var很多option ,我们采用立即执行函数包起来就不会参生命名冲突了。

                    格式如下:

                    示例代码:index.js

                    // 基础折线图

                    (function() {

                    // 实例化对象

                    var myChart = echarts.init(document.querySelector(“.bar .chart”));

                    // 指定配置和数据

                    var option = {

                    xAxis: {

                    type: ‘category’,

                    data: [‘Mon’, ‘Tue’, ‘Wed’, ‘Thu’, ‘Fri’, ‘Sat’, ‘Sun’]

                    },

                    yAxis: {

                    type: ‘value’

                    },

                    series: [{

                    data: [150, 230, 224, 218, 135, 147, 260],

                    type: ‘line’

                    }]

                    };

                    // 配置项和数据给我们的实例化对象

                    myChart.setOption(option);

                    // 当我们浏览器缩放的时候,图表也等比例缩放

                    window.addEventListener(“resize”, function() {

                    // 让我们的图表调用 resize这个方法

                    myChart.resize();

                    });

                    })();

                    // 饼图

                    (function() {

                    // 基于准备好的dom,初始化echarts实例

                    var myChart = echarts.init(document.querySelector(“.line .chart”));

                    // 指定配置和数据

                    var option = {

                    title: {

                    text: ‘某站点用户访问来源’,

                    subtext: ‘纯属虚构’,

                    left: ‘center’

                    },

                    tooltip: {

                    trigger: ‘item’

                    },

                    legend: {

                    orient: ‘vertical’,

                    left: ‘left’,

                    },

                    series: [

                    {

                    name: ‘访问来源’,

                    type: ‘pie’,

                    radius: ‘50%’,

                    data: [

                    {value: 1048, name: ‘搜索引擎’},

                    {value: 735, name: ‘直接访问’},

                    {value: 580, name: ‘邮件营销’},

                    {value: 484, name: ‘联盟广告’},

                    {value: 300, name: ‘视频广告’}

                    自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

                    深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

                    因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

                    既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

                    由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

                    如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)

                    最后

                    基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

                    [外链图片转存中…(img-PE4j8yoP-1711903022679)]

                    既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

                    由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

                    如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)

                    [外链图片转存中…(img-5iMFQO33-1711903022680)]

                    最后

                    基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

                    CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

上一篇:前端怎么配置本地服务器?

下一篇:vue element plus Virtualized Select 虚拟化选择器