微信小程序中使用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 相关文章推荐
js和jquery批量绑定事件传参数一(新猪猪原创)
Jun 23 Javascript
JQuery跨Iframe选择实现代码
Aug 19 Javascript
javascript dom追加内容实现示例
Sep 21 Javascript
css如何让浮动元素水平居中
Aug 07 Javascript
javascript实现秒表计时器的制作方法
Feb 16 Javascript
详解vue 配合vue-resource调用接口获取数据
Jun 22 Javascript
swiper动态改变滑动内容的实现方法
Jan 17 Javascript
vue插件mescroll.js实现移动端上拉加载和下拉刷新
Mar 07 Javascript
利用百度echarts实现图表功能简单入门示例【附源码下载】
Jun 10 Javascript
一篇文章弄懂javascript中的执行栈与执行上下文
Aug 09 Javascript
不刷新网页就能链接新的js文件方法总结
Mar 01 Javascript
es6函数之尾调用优化实例分析
Apr 25 Javascript
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
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
PHP通过插入mysql数据来实现多机互锁实例
2014/11/05 PHP
PHP使用xpath解析XML的方法详解
2017/05/20 PHP
利用php的ob缓存机制实现页面静态化方法
2017/07/09 PHP
javascript 解析后的xml对象的读取方法细解
2009/07/25 Javascript
Exitjs获取DataView中图片文件名
2009/11/26 Javascript
返回对象在当前级别中是第几个元素的实现代码
2011/01/20 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
判断滚动条到底部的JS代码
2013/11/04 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
NodeJS学习笔记之网络编程
2014/08/03 NodeJs
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
2015/10/23 Javascript
Jquery ajax基础教程
2015/11/20 Javascript
基于JQuery实现图片轮播效果(焦点图)
2016/02/02 Javascript
JS实现将数字金额转换为大写人民币汉字的方法
2016/08/02 Javascript
jQuery常见的选择器及用法介绍
2016/12/20 Javascript
解决微信二次分享不显示摘要和图片的问题
2017/08/18 Javascript
移动端效果之IndexList详解
2017/10/20 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
2018/03/08 Javascript
使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)
2014/04/25 Python
Python闭包实现计数器的方法
2015/05/05 Python
Python在图片中添加文字的两种方法
2017/04/29 Python
python实现内存监控系统
2021/03/07 Python
pandas 快速处理 date_time 日期格式方法
2018/11/12 Python
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】
2019/03/18 Python
详解centos7+django+python3+mysql+阿里云部署项目全流程
2019/11/15 Python
对python中各个response的使用说明
2020/03/28 Python
Python使用20行代码实现微信聊天机器人
2020/06/05 Python
会计岗位描述
2014/02/22 职场文书
人间正道是沧桑观后感
2015/06/15 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫
golang操作rocketmq的示例代码
2022/04/06 Golang
Java界面编程实现界面跳转
2022/06/16 Java/Android