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


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 相关文章推荐
Maps Javascript
Jan 22 Javascript
使用简洁的jQuery方法实现隔行换色功能
Jan 02 Javascript
js调用百度地图及调用百度地图的搜索功能
Sep 07 Javascript
JavaScript性能优化之小知识总结
Nov 20 Javascript
使用Script元素发送JSONP请求的方法
Jun 12 Javascript
jquery 实现复选框的全选操作实例代码
Jan 24 Javascript
jquery 手势密码插件
Mar 17 Javascript
jquery网页加载进度条的实现
Jun 01 jQuery
Vue 表单控件绑定的实现示例
Aug 11 Javascript
element-ui带输入建议的input框踩坑(输入建议空白以及会闪出上一次的输入建议问题)
Jan 15 Javascript
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 jQuery
PHP 502bad gateway原因及解决方案
Nov 13 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 文件缓存函数
2011/10/08 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
2011/11/02 PHP
一个PHP针对数字的加密解密类
2014/03/20 PHP
PHP实现生成数据字典功能示例
2018/05/24 PHP
基于PHP实现解密或加密Cloudflar邮箱保护
2020/06/24 PHP
js给dropdownlist添加选项的小例子
2013/03/04 Javascript
javascript数组遍历for与for in区别详解
2014/12/04 Javascript
jQuery实现不断闪烁文字的方法
2015/05/15 Javascript
测试IE浏览器对JavaScript的AngularJS的兼容性
2015/06/19 Javascript
javascript+html5实现绘制圆环的方法
2015/07/28 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
Easyui form combobox省市区三级联动
2016/01/13 Javascript
基于BootStarp的Dailog
2016/04/28 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
2018/02/04 Javascript
Nodejs下使用gm圆形裁剪并合成图片的示例
2018/02/22 NodeJs
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
解决百度Echarts图表坐标轴越界的方法
2018/10/17 Javascript
原生js通过一行代码实现简易轮播图
2019/06/05 Javascript
layui异步加载table表中某一列数据的例子
2019/09/16 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
[17:13]DOTA2 HEROS教学视频教你分分钟做大人-斯拉克
2014/06/13 DOTA
Python中比较特别的除法运算和幂运算介绍
2015/04/05 Python
小白如何入门Python? 制作一个网站为例
2018/03/06 Python
python去除扩展名的实例讲解
2018/04/23 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
python使用装饰器作日志处理的方法
2019/07/11 Python
pycharm专业版远程登录服务器的详细教程
2020/09/15 Python
详解向scrapy中的spider传递参数的几种方法(2种)
2020/09/28 Python
详解Scrapy Redis入门实战
2020/11/18 Python
html5将图片转换成base64的实例代码
2016/09/21 HTML / CSS
H5新属性audio音频和video视频的控制详解(推荐)
2016/12/09 HTML / CSS
服务理念口号
2014/06/11 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
公司考勤管理制度
2015/08/04 职场文书
授权协议书范本(3篇)
2019/10/15 职场文书
Python Django ORM连表正反操作技巧
2021/06/13 Python