微信小程序实现折线图的示例代码


Posted in Javascript onJune 07, 2019

插件地址:https://github.com/xiaolin3303/wx-charts/blob/master/dist/wxcharts.js

微信小程序折线图效果:

微信小程序实现折线图的示例代码

首先需要引入一个折线图的插件:

微信小程序实现折线图的示例代码

XXX.xml 的代码:

<canvas
 style="width: 400px; height: 500px;"
 canvas-id="yueEle"
 binderror="canvasIdErrorCallback"
></canvas>

注意 canvas-id="yueEle" 要与 JS中的   canvasId: 'yueEle' 一样。才能显示图。

微信小程序实现折线图的示例代码

然后在XXX.js中配置:

1.在顶部写入:

微信小程序实现折线图的示例代码

2.写一个独立的方法(或者直接写在onload里面):

我这里写的方法名是  getMothElectro  ,我后面试在onload里面调用了的。

微信小程序实现折线图的示例代码

getMothElectro:function(){
  var windowWidth = 320;
  try {
   var res = wx.getSystemInfoSync();
   windowWidth = res.windowWidth;
  } catch (e) {
   console.error('getSystemInfoSync failed!');
  }
  yuelineChart = new wxCharts({ //当月用电折线图配置
   canvasId: 'yueEle',
   type: 'line',
   categories: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31'], //categories X轴
   animation: true,
   // background: '#f5f5f5',
   series: [{
    name: '总用电量',
    //data: yuesimulationData.data,
    data: [1, 6, 9, 1, 0, 2, 9, 2, 8, 6, 0, 9, 8, 0, 3, 7, 3, 9, 3, 8, 9, 5, 4, 1, 5, 8, 2, 4, 9, 8, 7],
    format: function (val, name) {
     return val.toFixed(2) + 'kWh';
    }
   }, {
    name: '电池供电量',
    data: [0, 6, 2, 2, 7, 6, 2, 5, 8, 1, 8, 4, 0, 9, 7, 2, 5, 2, 8, 2, 5, 2, 9, 4, 4, 9, 8, 5, 5, 5, 6],
    format: function (val, name) {
     return val.toFixed(2) + 'kWh';
    }
   },
   {
    name: '光伏供电量',
    data: [6, 4, 9, 7, 1, 4, 5, 1, 1, 8, 8, 6, 6, 2, 2, 2, 0, 5, 5, 8, 8, 8, 8, 9, 0, 4, 6, 9, 2, 1, 6],
    format: function (val, name) {
     return val.toFixed(2) + 'kWh';
    }
   },
   {
    name: '市电供电量',
    data: [0, 4, 3, 3, 1, 7, 7, 7, 9, 9, 3, 3, 0, 0, 5, 6, 0, 4, 1, 2, 0, 1, 3, 9, 2, 5, 1, 8, 3, 4, 2],
    format: function (val, name) {
     return val.toFixed(2) + 'kWh';
    }
   }],
   xAxis: {
    disableGrid: true
   },
   yAxis: {
    title: '当月用电(kWh)',
    format: function (val) {
     return val.toFixed(2);
    },
    max: 20,
    min: 0
   },
   width: windowWidth,
   height: 200,
   dataLabel: false,
   dataPointShape: true,
   extra: {
    lineStyle: 'curve'
   }
  });
 }

3.然后在onload里面在调用一次:

微信小程序实现折线图的示例代码

4.在增加一个触摸显示功能:

微信小程序实现折线图的示例代码

微信小程序实现折线图的示例代码

yueTouchHandler: function (e) { //当月用电触摸显示
  console.log(daylineChart.getCurrentDataIndex(e));
  yuelineChart.showToolTip(e, { //showToolTip图表中展示数据详细内容
   background: '#7cb5ec',
   format: function (item, category) {
    return category + '日 ' + item.name + ':' + item.data
   }
  });
 },

这样就OK了!

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
JavaScript的面向对象方法以及差别
Mar 31 Javascript
JavaScript 撑出页面文字换行
Jun 15 Javascript
js创建对象的几种常用方式小结(推荐)
Oct 24 Javascript
Javascript中克隆一个数组的实现代码
Dec 06 Javascript
node.js中的path.delimiter方法使用说明
Dec 09 Javascript
jQuery实现二级下拉菜单效果
Jan 05 Javascript
JavaScript导航脚本判断当前导航
Jul 12 Javascript
在JSP中如何实现MD5加密的方法
Nov 02 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
Jan 20 Javascript
基于Vue制作组织架构树组件
Dec 06 Javascript
vuex进阶知识点巩固
May 20 Javascript
微信小程序实现左侧滑栏过程解析
Aug 26 Javascript
微信小程序如何刷新当前界面的实现方法
Jun 07 #Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
Jun 07 #Javascript
vue集成kindeditor富文本的实现示例代码
Jun 07 #Javascript
Vue使用Proxy监听所有接口状态的方法实现
Jun 07 #Javascript
你了解vue3.0响应式数据怎么实现吗
Jun 07 #Javascript
ES6小技巧之代替lodash
Jun 07 #Javascript
vue+element 模态框表格形式的可编辑表单实现
Jun 07 #Javascript
You might like
鸡肋的PHP单例模式应用详解
2013/06/03 PHP
php远程下载类分享
2016/04/13 PHP
php简单获取复选框值的方法
2016/05/11 PHP
ThinkPHP5.1验证码功能实现的示例代码
2020/06/08 PHP
有关于JS构造函数的重载和工厂方法
2013/04/07 Javascript
JQuery文字列表向上滚动的代码
2013/11/13 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
nodejs 中模拟实现 emmiter 自定义事件
2016/02/22 NodeJs
js密码强度实时检测代码
2016/03/02 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
2016/11/10 Javascript
bootstrap模态框实现拖拽效果
2016/12/14 Javascript
JS敏感词过滤代码
2016/12/23 Javascript
JavaScript代码执行的先后顺序问题
2017/10/29 Javascript
js Element Traversal规范中的元素遍历方法
2018/04/19 Javascript
如何利用@angular/cli V6.0直接开发PWA应用详解
2018/05/06 Javascript
AjaxFileUpload.js实现异步上传文件功能
2019/04/19 Javascript
Layui给switch添加响应事件的例子
2019/09/03 Javascript
webpack4从0搭建组件库的实现
2020/11/29 Javascript
[03:17]史诗级大片应援2018DOTA2国际邀请赛 致敬每一位坚守遗迹的勇士
2018/07/20 DOTA
Selenium的使用详解
2018/10/19 Python
深入理解Django-Signals信号量
2019/02/19 Python
Python求均值,方差,标准差的实例
2019/06/29 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
2019/10/30 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
2020/02/27 Python
Python Numpy中数据的常用保存与读取方法
2020/04/01 Python
python3安装OCR识别库tesserocr过程图解
2020/04/02 Python
Python pip install之SSL异常处理操作
2020/09/03 Python
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
2014/12/30 HTML / CSS
HTML5在IE10、火狐下中文乱码问题的解决方法
2013/11/18 HTML / CSS
英国亚马逊官方网站:Amazon.co.uk
2019/08/09 全球购物
德国亚马逊官方网站:Amazon.de
2020/11/15 全球购物
jQuery treeview树形结构应用
2021/03/24 jQuery
2014财务人员自我评价范文
2014/09/21 职场文书
投标人法定代表人授权委托书格式
2014/09/28 职场文书
地球上的星星观后感
2015/06/02 职场文书
用php如何解决大文件分片上传问题
2021/07/07 PHP