微信小程序中使用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 相关文章推荐
网页里控制图片大小的相关代码
Jun 25 Javascript
建议大家看下JavaScript重要知识更新
Jul 08 Javascript
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
Aug 04 Javascript
JQuery获取浏览器窗口内容部分高度的代码
Feb 24 Javascript
jQuery的$.proxy()应用示例介绍
Apr 03 Javascript
Bootstrap使用基础教程详解
Sep 05 Javascript
jQuery的ready方法实现原理分析
Oct 26 Javascript
Javascript之面向对象--方法
Dec 02 Javascript
微信小程序上传图片功能(附后端代码)
Jun 19 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
Apr 15 Javascript
vue2.0基于vue-cli+element-ui制作树形treeTable
Apr 30 Javascript
从0搭建vue-cli4脚手架
Jun 17 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
ThinkPHP表单令牌错误的相关解决方法分析
2016/05/20 PHP
用javascript实现在小方框中浏览大图的代码
2007/08/14 Javascript
jQuery让控件左右移动的三种实现方法
2013/09/08 Javascript
JS实现图片翻书效果示例代码
2013/09/09 Javascript
javascript放大镜效果的简单实现
2013/12/09 Javascript
javascript中为某个元素指定事件的三种方式
2014/08/07 Javascript
jqueryUI里拖拽排序示例分析
2015/02/26 Javascript
Javascript优化技巧之短路表达式详细介绍
2015/03/27 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
基于JS实现EOS隐藏错误提示层代码
2016/04/25 Javascript
layui分页效果实现代码
2017/05/19 Javascript
JavaScript 完成注册页面表单校验的实例
2017/08/19 Javascript
Servlet3.0与纯javascript通过Ajax交互的实例详解
2018/03/18 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
2018/12/30 Javascript
Vue实现简单的跑马灯
2020/05/25 Javascript
openlayers实现地图测距测面
2020/09/25 Javascript
JS模拟实现京东快递单号查询
2020/11/30 Javascript
Python中使用支持向量机SVM实践
2017/12/27 Python
python实现简单加密解密机制
2019/03/19 Python
Python切图九宫格的实现方法
2019/10/10 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
解决python打开https出现certificate verify failed的问题
2020/09/03 Python
如何查看python关键字
2021/01/17 Python
让IE6、IE7、IE8支持CSS3的脚本
2010/07/20 HTML / CSS
专门出售各种儿童读物的网站:Put Me In The Story
2016/08/07 全球购物
美国休闲服装品牌:Express
2016/09/24 全球购物
日本食品网上商店:JaponShop.com
2017/11/28 全球购物
中专生自我鉴定书范文
2013/12/28 职场文书
制药工程专业职业生涯规划范文
2014/03/10 职场文书
低碳生活倡议书
2014/04/14 职场文书
县人大领导班子四风对照检查材料思想汇报
2014/10/09 职场文书
2014年化验室工作总结
2014/11/21 职场文书
幼儿园万圣节活动总结
2015/05/05 职场文书
交通事故案件代理词
2015/05/23 职场文书
2016年端午节红领巾广播稿
2015/12/18 职场文书
如何用Navicat操作MySQL
2021/05/12 MySQL