微信小程序中使用ECharts 异步加载数据实现图表功能


Posted in Javascript onJuly 13, 2018

具体代码如下所示:

<view class="container">
 <ec-canvas id="mychart-dom-bar" canvas-id="mychart-bar" ec="{{ ec }}"></ec-canvas>
</view>
import * as echarts from '../../ec-canvas/echarts';
var barec = null
Page({
 onShareAppMessage: function (res) {
  return {
   title: 'ECharts 可以在微信小程序中使用啦!',
   path: '/pages/index/index',
   success: function () { },
   fail: function () { }
  }
 },
 data: {
  ec: {
   onInit: function (canvas, width, height) {
    barec = echarts.init(canvas, null, {
     width: width,
     height: height
    });
    canvas.setChart(barec);
    return barec;
   }
  }
 },
 onReady() {
  setTimeout(this.getData, 500);
 },
//getData方法里发送ajax
 getData(){
  wx.showLoading({
   title: '加载中...',
  })
   wx.request({
    url: 'http://192.168.3.81/heart.php',
    herder:{
     "content-type":"json"
    },
    success:function(res){
     console.log(res);
     var data = res.data.info;
     console.log(data);
     barec.setOption({
      grid: {
       left: '3%',
       right: '7%',
       bottom: '3%',
       containLabel: true
      },
      tooltip: {
       // trigger: 'axis',
       showDelay: 0,
       formatter: function (params) {
        if (params.value.length > 1) {
         return params.seriesName + ' :<br/>'
          + params.value[0] + 'm '
          + params.value[1] + 'm ';
        }
        else {
         return params.seriesName + ' :<br/>'
          + params.name + ' : '
          + params.value + 'm ';
        }
       },
       axisPointer: {
        show: true,
        type: 'cross',
        lineStyle: {
         type: 'dashed',
         width: 1
        }
       }
      },
      legend: {
       data: ["学生"],
       left: 'center'
      },
      xAxis: [
       {
        type: 'value',
        scale: true,
        axisLabel: {
         formatter: '{value} m'
        },
        splitLine: {
         show: false
        }
       }
      ],
      yAxis: [
       {
        type: 'value',
        scale: true,
        axisLabel: {
         formatter: '{value} m'
        },
        splitLine: {
         show: false
        }
       }
      ],
      series: [{
       name: '学生',
      // symbolSize: 20,
       data:data,
       type: 'scatter',
       markArea: {
        silent: true,
        itemStyle: {
         normal: {
          color: 'transparent',
          borderWidth: 1,
          borderType: 'dashed'
         }
        },
        data: [[{
         name: '教室',
         xAxis: '0',
         yAxis: '0'
        }, {
         xAxis: '20',
         yAxis: '20'
        }]]
       },
       markPoint: {
        // data: [
        //  { type: 'max', name: '最大值' },
        //  { type: 'min', name: '最小值' }
        // ]
       },
       markLine: {
        lineStyle: {
         normal: {
          type: 'solid'
         }
        },
        // data: [
        //  { type: 'average', name: '平均值' },
        //  { xAxis: 160 }
        // ]
       }
      }]
     })
     wx.hideLoading(); 
    },
    fail: function (res) { },
    complete: function (res) { },
   })
 }
});

总结

以上所述是小编给大家介绍的微信小程序中使用ECharts 异步加载数据实现图表功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JQuery操作表格(隔行着色,高亮显示,筛选数据)
Feb 23 Javascript
简单实用jquery版三级联动select示例
Jul 04 Javascript
javascript实现实时输出当前的时间
Apr 27 Javascript
jQuery中使用animate自定义动画的方法
May 29 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
Nov 10 Javascript
用Vue.js实现监听属性的变化
Nov 17 Javascript
JS排序之选择排序详解
Apr 08 Javascript
深入理解JS的事件绑定、事件流模型
May 13 Javascript
详解关于element el-button使用$attrs的一个注意要点
Nov 09 Javascript
uni app仿微信顶部导航条功能
Sep 17 Javascript
梳理一下vue中的生命周期
Dec 30 Vue.js
如何优化vue打包文件过大
Apr 13 Vue.js
JS实现select选中option触发事件操作示例
Jul 13 #Javascript
AngularJs的UI组件ui-Bootstrap之Tooltip和Popover
Jul 13 #Javascript
详解Angular-ui-BootStrap组件的解释以及使用
Jul 13 #Javascript
Bootstrap标签页(Tab)插件切换echarts不显示问题的解决
Jul 13 #Javascript
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
Jul 13 #Javascript
微信小程序实现tab页面切换功能
Jul 13 #Javascript
php中and 和 &amp;&amp;出坑指南
Jul 13 #Javascript
You might like
php for 循环语句使用方法详细说明
2010/05/09 PHP
php程序内部post数据的方法
2015/03/31 PHP
PHP中的Session对象如何使用
2015/09/25 PHP
两种php实现图片上传的方法
2016/01/22 PHP
PHP简单获取随机数的常用方法小结
2017/06/07 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
Laravel 创建可以传递参数 Console服务的例子
2019/10/14 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
js弹窗代码 可以指定弹出间隔
2010/07/03 Javascript
jquery tab插件精简版分享
2011/09/10 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
Node.js和MongoDB实现简单日志分析系统
2015/04/25 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
2015/05/25 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
2015/09/19 Javascript
非常实用的12个jquery代码片段
2015/11/02 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
2016/05/05 Javascript
利用jQuery插件imgAreaSelect实现获得选择域的图像信息
2016/12/02 Javascript
bootstrap下拉菜单使用方法解析
2017/01/13 Javascript
js求数组中全部数字可拼接出的最大整数示例代码
2017/08/25 Javascript
浅谈vue引入css,less遇到的坑和解决方法
2018/01/20 Javascript
Angular搜索场景中使用rxjs的操作符处理思路
2018/05/30 Javascript
小程序实现搜索界面 小程序实现推荐搜索列表效果
2019/05/18 Javascript
openlayers实现地图弹窗
2020/09/25 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2018/05/16 Python
python3.6使用pymysql连接Mysql数据库
2018/05/25 Python
python3爬虫中多线程进行解锁操作实例
2020/11/25 Python
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
美国非常受欢迎的Spa品牌:Bliss必列斯
2018/04/10 全球购物
香港交友网站:be2香港
2018/07/22 全球购物
结婚十年感言
2015/07/31 职场文书
使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
2021/04/07 HTML / CSS
SQL Server2019数据库备份与还原脚本,数据库可批量备份
2021/11/20 SQL Server
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技
MySQL数据库安装方法与图形化管理工具介绍
2022/05/30 MySQL