vue-cli和v-charts实现可视化图表过程解析


Posted in Javascript onOctober 08, 2019

v-charts是饿了么团队开源的一款基于Vue和Echarts的图表工具,在使用 echarts 生成图表时,经常需要做繁琐的数据类型转化、修改复杂的配置项,v-charts 的出现正是为了解决这个痛点。基于 Vue2.0 和 echarts 封装的 v-charts 图表组件,只需要统一提供一种对前后端都友好的数据格式设置简单的配置项,便可轻松生成常见的图表。

v-charts的中文社区文档(https://v-charts.js.org/#/),可根据项目需要自主学习和浏览;

因为项目需要用到了折线图的图标展示,图表用法大同小异,本文只讲述利用v-charts来构建折线图;

首先我们需要node和npm包管理工具,现在一般的新版本的node都已经内置npm包管理工具,node最新版本下载可去http://nodejs.cn/node官网进行下载,下载安装完成之后,我们可以按win+R快捷键打开运行对话框,然后输入cmd回车;

vue-cli和v-charts实现可视化图表过程解析

进入命令行工具之后输入node -v(注意中间有空格),如果下载成功会输出node的版本号;(这里我的node版本是v10.16.1)

vue-cli和v-charts实现可视化图表过程解析

装好node工具之后,我们可以在我们的项目终端或者项目文件夹中打开命令行工具输入命令:

npm i v-charts echarts -S

输入之后npm包管理工具就会自动的去下载echarts;当然,作为图表可视化插件库v-charts也为我们提供了cdn的方式(本文暂时只具体讲述vue-vli模式安装,cdn的方式就是直接通过标签引入文件即可):

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/v-charts/lib/index.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/v-charts/lib/style.min.css" rel="external nofollow" >

安装完v-charts之后,我们将要在我们的项目main.js中进行注册和使用:

// main.js
import Vue from 'vue'
import VCharts from 'v-charts'
import App from './App.vue'
Vue.use(VCharts)
new Vue({
 el: '#app',
 render: h => h(App)
})

这样,我们的v-charts就已经安装并完成了注册了,安装步骤和使用都还是比较方便简洁的;

那么我们如何使用v-charts进行生成图表呢?

<template>
//折线图的视图展示层,双向绑定chartData进行数据填充 
//双向绑定settings,进行一些设置
 <ve-line :data="chartData" :settings="chartSettings"></ve-line>
</template>

<script>
 export default {
  data: function () {
   return {
    chartData: {
 

chartSettings:{




//设置中文图例




labelMap:{





//date对应后台返回json数据的key,具体值根据接口字段来修改





date:"日期",





//total对应后台返回son数据的value,具体值根据接口字段来修改





total:"商户数量"





}




},



chartData: {




//这里的格式必须是对应上面后台接口的字段才能显示图例




columns: ['date', 'total'],




rows: []




},
    }
   }
  }
 }
</script>

然后我们写我们的方法进行axios请求后台数据进行填充,拿到的数据进行赋值给this.chartData.rows,数据类型要求是json格式的 数组

sevenTurnover(){
     this.$http({
       url:"merchantMain/sevenTurnover",
       method:"get",
       params:{
         machineCode:this.$route.query.machineCode
       }
     }).then((res)=>{
       console.log(res.data.data);
       this.chartData.rows=res.data.data;
       console.log(this.chartData.rows);
       this.turnoverNumber();
     })
   },

这样,我们就可以通过调用接口进行可视化图表展示了,效果图如下(这个是移动端项目的图表展示效果):

vue-cli和v-charts实现可视化图表过程解析

v-charts的入门使用还是比较简单的,具体的一些个性化设置或修改可以根据文档进行自定义修改

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 面向对象(三)接口代码
May 23 Javascript
window.open不被拦截的实现代码
Aug 22 Javascript
js+数组实现网页上显示时间/星期几的实用方法
Jan 18 Javascript
不用一句js代码初始化组件
Jan 27 Javascript
详解JavaScript中基于原型prototype的继承特性
May 05 Javascript
angular bootstrap timepicker TypeError提示怎么办
Jun 13 Javascript
vue-cli脚手架引入图片的几种方法总结
Mar 13 Javascript
微信小程序里引入SVG矢量图标的方法
Sep 20 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
Feb 19 Javascript
jQuery使用hide()、toggle()函数实现相机品牌展示隐藏功能
Jan 29 jQuery
javascript之Object.assign()的痛点分析
Mar 03 Javascript
微信小程序实现轮播图指示器
Jun 25 Javascript
vue路由传参页面刷新参数丢失问题解决方案
Oct 08 #Javascript
vux-scroller实现移动端上拉加载功能过程解析
Oct 08 #Javascript
深入学习Vue nextTick的用法及原理
Oct 08 #Javascript
jQuery 筛选器简单操作示例
Oct 02 #jQuery
jQuery 查找元素操作实例小结
Oct 02 #jQuery
JavaScript 作用域实例分析
Oct 02 #Javascript
JavaScript Dom 绑定事件操作实例详解
Oct 02 #Javascript
You might like
php数组函数序列之in_array() 查找数组值是否存在
2011/10/29 PHP
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
php中拷贝构造函数、赋值运算符重载
2012/07/25 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
2013/06/28 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
JQUERY操作JSON实例代码
2010/02/09 Javascript
借助script进行Http跨域请求:JSONP实现原理及代码
2013/03/19 Javascript
基于dom编程中 动态创建与删除元素的使用
2013/04/17 Javascript
如何使用Javascript获取距今n天前的日期
2013/07/08 Javascript
javascript实现简单的Map示例介绍
2013/12/23 Javascript
jquery实现表单验证并阻止非法提交
2015/07/09 Javascript
JS中多种方式创建对象详解
2016/03/22 Javascript
jQuery绑定事件的四种方式介绍
2016/10/31 Javascript
javascript函数的四种调用模式
2017/01/08 Javascript
js自定义瀑布流布局插件
2017/05/16 Javascript
jQuery EasyUI的TreeGrid查询功能实现方法
2017/08/08 jQuery
Angular实现预加载延迟模块的示例
2017/10/12 Javascript
详解vue 项目白屏解决方案
2018/10/31 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
python实现迭代法求方程组的根过程解析
2019/11/25 Javascript
[02:17]2016完美“圣”典风云人物:Sccc专访
2016/12/03 DOTA
python开发之tkinter实现图形随鼠标移动的方法
2015/11/11 Python
asyncio 的 coroutine对象 与 Future对象使用指南
2016/09/11 Python
Django框架教程之正则表达式URL误区详解
2018/01/28 Python
Django 配置多站点多域名的实现步骤
2019/05/17 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
python 如何设置守护进程
2020/10/29 Python
自我鉴定注意事项
2014/01/19 职场文书
护理职业生涯规划书
2014/01/24 职场文书
杭州黄龙洞导游词
2015/02/10 职场文书
2016年小学圣诞节活动总结
2016/03/31 职场文书
2016年艾滋病宣传活动总结
2016/04/01 职场文书
盘点2020年适合农村地区创业的项目
2019/10/16 职场文书
教你怎么用python实现字符串转日期
2021/05/24 Python
Python OpenCV实现传统图片格式与base64转换
2021/06/13 Python
Python与C++中梯度方向直方图的实现
2022/03/17 Python