微信小程序中使用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中将字符串转换成json的三种方式
Jan 12 Javascript
node.js中的fs.lstatSync方法使用说明
Dec 16 Javascript
JavaScript中用toString()方法返回时间为字符串
Jun 12 Javascript
javascript中JSON对象与JSON字符串相互转换实例
Jul 11 Javascript
写给小白的JavaScript引擎指南
Dec 04 Javascript
你所未知的3种Node.js代码优化方式
Feb 25 Javascript
Bootstrap实现带暂停功能的轮播组件(推荐)
Nov 25 Javascript
Mongoose实现虚拟字段查询的方法详解
Aug 15 Javascript
gulp安装以及打包合并的方法教程
Nov 19 Javascript
vue中render函数的使用详解
Oct 12 Javascript
vue分页器组件编写方法详解
Jun 28 Javascript
vue单应用在ios系统中实现微信分享功能操作
Sep 07 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
php产生随机数的两种方法实例代码 输出随机IP
2011/04/08 PHP
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
在SAE上搭建最新wordpress的方法
2014/12/21 PHP
PHP如何通过传引用的思想实现无限分类(代码简单)
2015/10/13 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
PHP执行系统命令函数实例讲解
2021/03/03 PHP
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
swiper动态改变滑动内容的实现方法
2018/01/17 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
seajs下require书写约定实例分析
2018/05/16 Javascript
vue.js使用3DES加密的方法示例
2018/05/18 Javascript
koa socket即时通讯的示例代码
2018/09/07 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
6行代码实现微信小程序页面返回顶部效果
2018/12/28 Javascript
详解axios中封装使用、拦截特定请求、判断所有请求加载完毕)
2019/04/09 Javascript
vue 递归组件的简单使用示例
2021/01/14 Vue.js
利用Python代码实现数据可视化的5种方法详解
2018/03/25 Python
Django密码系统实现过程详解
2019/07/19 Python
PyCharm刷新项目(文件)目录的实现
2020/02/14 Python
PyTorch的torch.cat用法
2020/06/28 Python
python 基于Apscheduler实现定时任务
2020/12/15 Python
加拿大购物频道:The Shopping Channel
2016/07/21 全球购物
英国床和浴室商场:Bed & Bath Emporium
2018/05/20 全球购物
Bibloo荷兰:女士、男士和儿童的服装、鞋子和配饰
2019/02/25 全球购物
PHP如何防止SQL注入
2014/05/03 面试题
会计职业生涯规划范文
2014/01/04 职场文书
个人安全承诺书
2014/05/22 职场文书
公司承诺书怎么写
2014/05/24 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
常务副县长“四风”个人对照检查材料思想汇报
2014/10/02 职场文书
企业务虚会发言材料
2014/10/20 职场文书
超级实用的公文标题大全!
2019/07/19 职场文书
小学生节约用水倡议书
2019/08/12 职场文书
解决Golang中goroutine执行速度的问题
2021/05/02 Golang
mybatis 解决从列名到属性名的自动映射失败问题
2021/06/30 Java/Android
Java Socket实现多人聊天系统
2021/07/15 Java/Android