前端学习教程:快速入门前端图表插件ECharts

2023-11-20

前言

在前端项目开发中,有很多地方会遇到绘制图表的需求,一般的图表可以通过canvas来绘制,但是遇到复杂一点的图表怎么办呢?不要慌,在下今天就给大家推荐一个前端大佬们用的非常火的图表插件——ECharts。

ECharts特性简介

ECharts是一个使用 JavaScript 实现的开源可视化库 ,啥叫开源呢,通俗点说,就是免费!不要钱!小伙伴们可以大胆放心的使用,可视化工具呢,就是将一系列的数据,转化成非常直观的图表,来供大家查看,ECharts可谓是制作图表的良心之选,并且可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),所以,基本完全不用担心兼容性的问题,底层依赖轻量级的矢量图形库 ZRender,提供直观,交互丰富,可高度个性化定制的数据可视化图表。 。

ECharts 提供了常规的折线图柱状图散点图饼图K线图,用于统计的盒形图,用于地理数据可视化的地图热力图线图,用于关系数据可视化的关系图treemap旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图仪表盘,并且支持图与图之间的混搭。

​具体的还有的优点,我就不一一介绍了,需要用到更多功能的小伙伴呢,可以去ECharts官网查找更多的特性(https://ECharts.baidu.com/feature.html)。

ECharts的下载

​ 在使用ECharts之前呢,我们需要先去官网下载最新版本的ECharts的依赖包(https://ECharts.baidu.com/download.html),在这呢,我推荐大家下载源代码,因为你源代码里面包含了所有图表组件以及常见的警告和错误.如果你觉得源代码文件太大,而且项目中用到的图表功能很简单的话呢,那就使用精简版的好啦.

 

ECharts在普通项目中的使用

下面呢,重点来啦,大家准备好编译器哈,准备和小编一起完成图表代码的实现啊.

首先呢,给大家讲一下ECharts图表在普通项目中的使用,后面还会讲到如何在vue项目里面使用,其他的开源框架里面如何使用我就不一一讲解了哈.

第一步

老规矩,首先将下载好的ECharts.js放在项目的js文件夹下面,之后呢,在需要用到的页面,引入<script src="ECharts.js"></script>,然后就可以开始写代码啦

第二步

准备好一个dom元素,当然啦,需要给该dom元素一个id,方便我们去找到它,而且,还要给这个元素一个宽高,作为表格的视口,至于宽高给多少呢,各位大佬们高兴就好.

第三步

开始写js代码啦,js代码有三个步骤:

FIRST

初始化ECharts实例:

var myChart = ECharts.init(document.getElementById('main'));

SECOND

指定图表的配置项和数据:

var option = {
        title: {
            text: 'ECharts 入门示例'
        },
        tooltip: {},
        legend: {
            data: ['销量']
        },
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }]
    };

THIRD

使用刚指定的配置项和数据显示图表:

myChart.setOption(option);

这样子就OK啦,在浏览器打开你的代码吧,我们就得到了一个带动画效果的柱状图哦

当然,不只是只有柱状图,还有各种其他的图表,怎么使用呢,首先点击实例,我们就来到了这个页面

 

看上哪个图表了吗?不要犹豫啦,点击进去,我们就来到了如下页面

 

 

然后复制左边的option代码,替换掉之前的第二步里面的option就可以啊,第一步和第三步是通用的,不需要修改;

图表里面的数据也是可以自定义的,比如想渲染通过ajax请求过来的数据的话,直接在ajax的回调函数里面直接给option赋值或者修改就可以啦;

那么,关于ECharts图表在普通项目中的使用就讲到这里啦,下面就给大家演示一下,如何在vue-cli 3.0里面的应用;

ECharts在vue-cli 3.3.0中的使用

​ ECharts不止是在vue-cli 3.3.0项目中可以使用,在其他版本的vue里面同样可以使用,因为vue-cli已经更新到了3.3.0,所以我们今天用这个版本作为例子来给大家演示.

第一步

​ 第一步呢,肯定是要先搭建vue-cli的项目啦,首先呢你需要有node的运行环境,这里我就默认大家都有啦,首先呢安装vue-cli的全局环境npm install -g @vue/cli,装好之后呢,尝输入命令vue --version,如果出现了3.3.0字样,就说明安装成功啦,如果报错vue不是内部命令的话呢,就是安装失败了,那就有可能是你没有装node环境,或者node版本过低哦,vue-cli需要 node 8.9 或更高版本 (推荐 8.11.0+),这时候你就需要装一个更高版本的node啦;vue-cli环境搭建好之后呢,就开始创建vue的项目啦,也很简单,新建一个文件夹,然后输入指令vue create hello-world,就可以创建好一个vue的初始化项目啦.项目初始化之后呢,安装ECharts依赖包npm install ECharts -S,就可以开始写代码啦

第二步

在main.js里面导入ECharts依赖包,再将ECharts实例化函数设为vue的原型函数,便于全局访问,代码如下图:

第三步

​然后在HelloWorld.vue的template里面添加标签

script里面代码如下:

 

当然也有别的不同的写法,但是我觉得,这是我研究了很久出来的一套比较合理的写法,数据option放在data里面,初始化图表的drawCharts方法放在methods里面,然后呢方法为什么要在mounted生命周期函数里面调用呢?直接在methods里面调用不行吗?是不行的,因为我们在初始化的时候操作了dom元素,而mounted声明周期函数是在页面中的dom元素加载完毕之后才执行的而函数,所以在mounted里面调用drawCharts方法就不会出现找不到dom元素的情况啦,vue里面是拒绝操作dom元素的,但是呢,这个插件没有办法,必须选中dom元素初始化才可以,所以这里是一点小瑕疵,希望ECharts团队可以更加的优化一下,最后呢,大家npm run serve一哈,哈哈哈哈哈,是不是有图表出来啦.

结语

​ 这个文档主要是针对图表插件ECharts写的一个解析,大部分的东西呢,在ECharts官方文档里面都有,但是官方文档上面有的坑它并没有说出来,我就把我在用这个插件时遇到的坑,还有自己对这个插件的一点点理解毫无保留的献给大家,希望大家在要用到ECharts这个插件的时候呢,能耐心的看看我这个文档,也希望这个文档对大家有所帮助,最后呢,拜个晚年,祝大家晚年幸福!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

前端学习教程:快速入门前端图表插件ECharts 的相关文章

随机推荐

  • 比例均摊

    CREATE TABLE TEST01 VALUES1 VARCHAR2 10 VALUES2 VARCHAR2 10 VALUES3 VARCHAR2 10 INSERT INTO TEST01 VALUES 1 2 3 INSERT I
  • 最全4k,8k的高清壁纸网站免费下载

    极简壁纸 https bz zzzmh cn classify 部分壁纸展示 wallhaven https wallhaven cc wallpaper abyss https wall alphacoders com by resolu
  • 海外硕士"苏明哲"回国后哀叹:我美本英硕,找不到工作很难受

    推荐阅读 欢迎加入我们的架构师社群 阿里跳槽拼多多 80万年薪涨到160万 值不值得去 一名海外留学生回国后找工作 却屡受打击 感慨自己美本英硕 却找不到工作 内心真的很难受 如下便是其吐槽的个人经历 楼主馁本英硕 硕士50左右的学校 非技
  • Windows系统中如何标识一个卷(Volume)

    问题 从事数据存储底层工作的小伙伴们应该会关心以下两个问题 1 如何标识一个卷 2 新建了一个卷 以挂载文件夹的方式同时挂载到E abc和F def 此时这两个挂载点如何区分 解决方案 问题1 Windows系统提供两种方式来标识一个卷 用
  • 位运算及其应用

    文章目录 位运算基础知识 与 或 非 异或 进阶应用 lowbit 状态压缩 位运算基础知识 与 或 非 异或 进阶应用 lowbit 返回二进制数的最低位1的值 int LowBit int n return n n int GetBit
  • hover时效果从中间向两边扩散

    header nav gt li position relative display inline block margin right 20px padding 0 5px font size 16px line height 76px
  • P1433 吃奶酪 题解(勿抄袭)

    P1433 吃奶酪 题目描述 房间里放着 n 块奶酪 一只小老鼠要把它们都吃掉 问至少要跑多少距离 老鼠一开始在 0 0 点处 输入格式 第一行一个正整数 n 接下来每行 2 个实数 表示第i块奶酪的坐标 两点之间的距离公式为 输出格式 一
  • map获取最大值value和其对应的key

    public String getMaxStr Map
  • 光盘 显示0字符 无法读取文件的修复方法!!

    光盘 显示0字符 无法读取文件的修复方法 问题现象 光盘在运行中强制退出 再次重新读入时 无法读出其中内容 右键 gt 属性 可以看到可用空间和已用空间均为0 出错原因分析 光盘强制退出 未在光盘的引导区写入终止符 导致光盘损坏 解决方案
  • unity网络资源导入

    1 找到需要导入的文件 这里导入fbx格式 2 打开unity界面 在Asset目录下创建文件夹FBX 将需要导入的fbx预制体或整个文件夹拖入创建的FBX文件夹下 3 选中需要的fbx预制体并拖至场景中 4 双击定位到当前物体 5 找到需
  • WINDOWS TE开发指南

    下载 gt 操作系统 gt Linux gt Tiny6410 WindowsCE开发指南 div class download l fl div class download top div class download top wrap
  • 实现Tomcat——实现javax.servlet.Servlet接口

    0 环境配置 这里使用IntelliJ IDEA Maven WebApp项目 不过这里我们不会使用 启动Tomcat服务器 本文的目的就是使用Socket实现一个服务器 此服务器是一个Servlet容器 我们需要遵循Servlet接口规范
  • 简单实现链表增删改查

    学习目标 简单实现链表增删改查 学习内容 外部类和内部类 封装方法 其他类使用内部类私有方法 递归算法 代码块 class test public static void main String args Nodelianbiao nlb
  • js下载流文件

    const request new XMLHttpRequest const resourceUrl hostUrl request open POST resourceUrl true request setRequestHeader A
  • rabbitmq消费者启动报队列未找到

    使用的是spring rabbitmq 启动tomcate报错 消费这队列找不到 如果队列不存在消费者会自动创建的 Caused by org springframework amqp AmqpIllegalStateException F
  • 阿里云无影云电脑怎么买?阿里无影云电脑教程

    可以理解成一台普通的远程连接的电脑不能用于建站之类 纯粹处理办公文档一类 阿里云无影云电脑怎么买 云电脑无影在哪里买 阿里云无影云电脑已经底调上线 可以在阿里云官方云小站购买 目前 阿里云无影云电脑针对新用户有优惠活动 mini版无影云电脑
  • 性能测试流程

    性能测试流程 1 性能测试需求分析 2 性能测试计划和方案 3 性能测试用例编写 4 性能测试执行 编写 录制脚本 搭建场景 运行脚本 系统性能调优 5 性能测试报告总结 流程拆分 一 性能测试需求分析 1 1 熟悉被测系统 熟悉被测系统的
  • 在JDK17尝鲜Flink1.17

    在JDK17尝鲜Flink1 17 前言 还没玩明白老版本 Flink1 17就来了 总还是要向前看的 根据官网文档 https nightlies apache org flink flink docs release 1 17 docs
  • 【攻防世界】三 --- php_rce

    题目 php rce 一 writeup 主页中提示使用了ThinkPHP V5 在github中搜一下ThinkPHP V5的相关漏洞 可以找到一些 由于我们不知其具体的版本 随便找一个执行一下 这里选择第一个 会显出了root
  • 前端学习教程:快速入门前端图表插件ECharts

    前言 在前端项目开发中 有很多地方会遇到绘制图表的需求 一般的图表可以通过canvas来绘制 但是遇到复杂一点的图表怎么办呢 不要慌 在下今天就给大家推荐一个前端大佬们用的非常火的图表插件 ECharts ECharts特性简介 EChar