zoukankan      html  css  js  c++  java
  • 微信小程序echarts学习记录

    微信小程序echarts学习记录——曲线图

    需要在微信小程序中使用曲线图来展示数据,这里使用echarts插件来画曲线图

    1、下载echarts组件

    首先,下载echarts组件,下载地址https://github.com/ecomfe/echarts-for-weixin

    2、引入echarts组件

    下载好后,将下载文件中 ec-canvas目录下的文件拷贝到小程序的目录中。

    然后在需要的页面引入即可。

    3、开始在小程序中使用echarts组件画曲线图

    1)在页面开启使用echarts

    在.json页面的usingComponents里面引入echarts组件,如下:

    2)在js文件中引入echarts

    在.js文件中引入echarts组件,如下:

    3)前端页面使用echarts元素

    在.wxml文件中,echarts创建了一个 组件,内容如下

    其中 ec 是一个ECharts在 index.js 中定义的对象,它使得图表能够在页面加载后被初始化并设置

    4)开始编写曲线图

    在.js文件中编写方法,如下:

    var option = {
      color: ["#999999"],
      legend: {
        data: ['测量身高'],
        left: 'right',
        z: 100
      },
      grid: {
        containLabel: true,
        left: '5%',
        right: '5%'
      },
      tooltip: {
        show: true,
        trigger: 'axis',
        // formatter: "周数:{b}
    增重:{c}",
        position: function (pos, params, el, elRect, size) {
          var obj = { top: 100 };
          obj[['left', 'right'][+(pos[0] < size.viewSize[0] / 3)]] = 30;
          return obj;
        },
      },
      xAxis: {
        type: 'category',
        boundaryGap: false,
        data: [],
        show: true,
      },
      yAxis: {
        x: 'center',
        type: 'value',
        name: '身高(厘米)',
        splitLine: {
          lineStyle: {
            type: 'dashed'
          }
        },
        min:45,
        max:135,
        interval: 5,
        // show: false
      },
      series: [{
        name: '建议增长上限',
        type: 'line',
        smooth: true,
        data: [],
        connectNulls: true
      }, {
        name: '测量身高',
        type: 'line',
        smooth: true,
        data: [],
        connectNulls: true
      }, {
        name: '建议增长下限',
        type: 'line',
        smooth: true,
        data: [],
        connectNulls: true
      }],
    };
    
    function initChart(canvas, width, height) {
      var windowWidth = 320;
      try {
        var res = wx.getSystemInfoSync();
        windowWidth = res.windowWidth;
      } catch (e) { }
      lineChart = echarts.init(canvas, null, {
         windowWidth,
        height: 480
      });
      canvas.setChart(lineChart);
      lineChart.setOption(option);
      return lineChart;
    }
    
    data: {
    image_height: 480,
        image_ 0,
        ec: {
          onInit: initChart
        },
    }
    
    drawImage: function (data, that) {
        var windowWidth = 320;
        try {
          var res = wx.getSystemInfoSync();
          windowWidth = res.windowWidth;
        } catch (e) { }
        that.setData({
          image_ windowWidth
        })
        let gravidaInfo = wxcache.get(sessionKey.gravidaInfo)
        var category = [];
        for (var i = 0; i < 49; i++) category.push(i == 0 ? (i + "月") : i);
        let series = [{
          name: '建议增长上限',
          data: ''
        }, {
          name: '测量身高',
          data: data
        }, {
          name: '建议增长下限',
          data: ''
        }];
        setTimeout(function () {
          lineChart.setOption({
            xAxis: {
              data: category
            },
            series: series
          });
        }, 500)
      },
    
    onShow: function() {
      let that = this
      that.drawImage(Stature, this);
    }

    5)最终效果

     

     
  • 相关阅读:
    Python多进程实现并行化随机森林
    Python多进程队列间传递对象
    Umlet和draw.io 使用心得
    简单认识Adam优化器
    使用BERT进行情感分类预测及代码实例
    【深度学习】深入理解Batch Normalization批标准化
    Vue插件总结
    Vue配置环境识别
    pc端微信上传BUG
    Vue原生订单列表
  • 原文地址:https://www.cnblogs.com/huangxc/p/10589418.html
Copyright © 2011-2022 走看看