echarts 官方文档传送门

根据官方文档示例,我们先展示测试数据。

Javascript

<template><div><!-- 面包屑导航区域 --><el-breadcrumb separator="/"><el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item><el-breadcrumb-item>数据统计</el-breadcrumb-item><el-breadcrumb-item>数据报表</el-breadcrumb-item></el-breadcrumb><!-- 卡片视图 --><el-card><!-- 2.为ECharts准备一个具备大小(宽高)的Dom --><div id="main" style="width: 600px;height:400px;"></div></el-card></div>
</template><script>
// 1.导入echarts
import echarts from 'echarts'
export default {data() {return {}},created() {},mounted() {// 3.基于准备好的dom,初始化echarts实例var myChart = echarts.init(document.getElementById('main'))// 4.准备数据和配置项var option = {title: {text: 'ECharts 入门示例'},tooltip: {},legend: {data: ['销量']},xAxis: {data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']},yAxis: {},series: [{name: '销量',type: 'bar',data: [5, 20, 36, 10, 10, 20]}]}// 5.使用刚指定的配置项和数据显示图表。myChart.setOption(option)},computed: {},methods: {}
}
</script><style lang="less" scoped>
</style>

最终实现效果:

由于通过 $http获取得到的数据缺少鼠标跟随的效果,于是需要将 options 进行合并操作,此时使用了 lodash的 merge 函数。核心代码如下:

Javascript

// 4.准备数据和配置项(res.data)
const result = _.merge(res.data, this.options)

在此提供数据报表折线图绘制的源代码:

Javascript

<template><div><!-- 面包屑导航区域 --><el-breadcrumb separator="/"><el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item><el-breadcrumb-item>数据统计</el-breadcrumb-item><el-breadcrumb-item>数据报表</el-breadcrumb-item></el-breadcrumb><!-- 卡片视图 --><el-card><!-- 2.为ECharts准备一个具备大小(宽高)的Dom --><div id="main" style="width: 750px;height:400px;"></div></el-card></div>
</template><script>
// 1.导入echarts
import echarts from 'echarts'
import _ from 'lodash'
export default {data() {return {/* 需要合并的数据 */options: {title: {text: '用户来源'},tooltip: {trigger: 'axis',axisPointer: {type: 'cross',label: {backgroundColor: '#E9EEF3'}}},grid: {left: '3%',right: '4%',bottom: '3%',containLabel: true},xAxis: [{boundaryGap: false}],yAxis: [{type: 'value'}]}}},created() {},async mounted() {// 3.基于准备好的dom,初始化echarts实例var myChart = echarts.init(document.getElementById('main'))const { data: res } = await this.$http.get('reports/type/1')if (res.meta.status !== 200) {return this.$message.error('获取折线图数据失败!')}// 4.准备数据和配置项(res.data)const result = _.merge(res.data, this.options)// 5.使用刚指定的配置项和数据显示图表。myChart.setOption(result)},computed: {},methods: {}
}
</script><style lang="less" scoped>
</style>

最终实现效果如下:

前端学习(2734):重读vue电商网站44之使用 echarts相关推荐

  1. 前端学习(2741):重读vue电商网站51之首页内容定制

    不同的打包环境下,首页内容可能会有所不同.我们可以通过插件的方式进行定制,插件配置如下: Javascript chainWebpack: config => {config.when(proc ...

  2. 前端学习(2739):重读vue电商网站49之第三方库使用CDN

    通过 externals 加载外部 CDN 资源 默认情况下,通过 import 语法导入的第三方依赖包,最终会被打包合并到同一个文件中,从而导致打包成功后,单文件体积过大的问题. 例如上述 chun ...

  3. 前端学习(2743):重读vue电商网站53之项目上线

    通过 node 创建 web 服务器. 开启 gzip 配置. 配置 https 服务. 使用 pm2 管理应用. 通过 node 创建 web 服务器 创建 node 项目,并安装 express, ...

  4. 前端学习(2742):重读vue电商网站52之路由懒加载

    当打包构建项目时,JavaScript 包会变得非常大,影响页面加载.如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就更加高效了. 具体需要 3 步: 安 ...

  5. 前端学习(2737):重读vue电商网站47之生成打包报告

    打包时,为了直观地发现项目中存在的问题,可以在打包时生成报告.生成报告的方式有两种: ① 通过命令行参数的形式生成报告 Javascript // 通过 vue-cli 的命令选项可以生成打包报告 / ...

  6. 前端学习(2736):重读vue电商网站46之执行build 时报错

    Error: No module factory available for dependency type: CssDependency 解决办法: 参考:解决webpack打包报错 No modu ...

  7. 前端学习(2735):重读vue电商网站45之项目优化上线

    优化Vue项目,部署Vue项目 项目优化 添加进度条 nprogress 进度条官方文档传送门 打开 vue-ui 面板,选择依赖,输入 nprogress 进行安装相关依赖. npm Javascr ...

  8. 前端学习(2732):重读vue电商网站42之添加富文本编辑器

    vue-quill-editor 官方文档传送门 通过 vue-ui 界面,可以安装我们所需要的依赖,或者使用下文 npm 或 yarn安装. NPM Js npm install vue-quill ...

  9. 前端学习(2731):重读vue电商网站41之自定义格式化时间的全局过滤器

    在 main.js 入口文件全局注册格式化时间的过滤器,代码如下所示: Javascript // 自定义格式化时间的全局过滤器 Vue.filter('dataFormat', function(o ...

最新文章

  1. docker 删除容器_Docker (二) Windows10专业版安装教程
  2. 去除字符串标点 + 泛型算法使用
  3. python不满足条件重新输入_在python里为何不满足while条件,while里语句却可以执行?...
  4. angularjs的$http请求方式
  5. 大数据平台不是救世主!做好数字化转型,得先解决这一问题
  6. 安卓开发之如何利用Intent对象,实现Activity和另一个Activity之间的跳转
  7. [转]Python中下划线---完全解读
  8. 实践出真知--ZAC《网络营销实战密码》
  9. Cgroups控制cpu,内存,io示例
  10. 据说这些基础知识90%的人都回答错了,你呢?
  11. 10个资源满满的网站,偷偷收藏起来吧!
  12. Warez出品的精品动画,近25万倍的压缩,大小仅有64K的
  13. python依赖库是什么_【转】python导出依赖库
  14. 将Firefox浏览器的Google工具栏拖动到浏览器底部
  15. VISTA下载全集(下)
  16. 安装程序包的语言不受系统支持的解决
  17. 数据仓库架构演进与菜鸟实时数据仓库设计
  18. 最小二乘法及应用实例
  19. 关于手机模拟器的探索
  20. Excel数据快速录入技巧分享

热门文章

  1. 数字经济的核心是对大数据_大数据崛起为数字世界的核心润滑剂
  2. python:pytest中的setup和teardown
  3. dom对象常用的属性和方法有哪些?
  4. maven 本地包依赖包打进jar
  5. 近期H5项目开发小结
  6. POJ1177 Picture 线段树+离散化+扫描线
  7. 用虚拟机把ubuntu安装到TF卡上
  8. vs2008使用技巧
  9. sasl java_javaSASL_SSL帐号密码方式访问kafka
  10. opengl三维图形图形颜色_【图形学基础】基本概念