欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序中使用ECharts 異步加載數(shù)據(jù)的方法

 更新時(shí)間:2018年06月27日 10:14:53   作者:Jade_g  
這篇文章主要介紹了微信小程序中使用ECharts 異步加載數(shù)據(jù)的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

官網(wǎng)例子都是同步的,怎么引入及同步demo請移步官網(wǎng)

<view class="container">
 <ec-canvas id="mychart-dom-multi-bar" canvas-id="mychart-multi-bar" ec="{{ ecBar }}"></ec-canvas>
 <ec-canvas id="mychart-dom-multi-scatter" canvas-id="mychart-multi-scatter" ec="{{ ecScatter }}"></ec-canvas>
</view>
import * as echarts from '../../ec-canvas/echarts';
Page({
 data: {
  ecBar: {
   lazyLoad: true // 延遲加載
  },
  ecScatter: {
   lazyLoad: true 
  }
 },
 onLoad(){
  this.barComponent = this.selectComponent('#mychart-dom-multi-bar');
  this.scaComponnet = this.selectComponent('#mychart-dom-multi-scatter');
  this.init_bar();
  this.init_sca();
 },
 init_bar: function (){
  this.barComponent.init((canvas, width, height) => {
   // 初始化圖表
   const barChart = echarts.init(canvas, null, {
    width: width,
    height: height
   });
   barChart.setOption(this.getBarOption());
   // 注意這里一定要返回 chart 實(shí)例,否則會影響事件處理等
   return barChart;
  });
 },
 init_sca: function () {
  this.scaComponnet.init((canvas, width, height) => {
   // 初始化圖表
   const scaChart = echarts.init(canvas, null, {
    width: width,
    height: height
   });
   scaChart.setOption(this.getScaOption());
   // 注意這里一定要返回 chart 實(shí)例,否則會影響事件處理等
   return scaChart;
  });
 },
 getBarOption:function(){
  //return 請求數(shù)據(jù)
  return {
   color: ['#37a2da', '#32c5e9', '#67e0e3'],
   tooltip: {
    trigger: 'axis',
    axisPointer: {      // 坐標(biāo)軸指示器,坐標(biāo)軸觸發(fā)有效
     type: 'shadow'    // 默認(rèn)為直線,可選為:'line' | 'shadow'
    }
   },
   legend: {
    data: ['熱度', '正面', '負(fù)面']
   },
   grid: {
    left: 20,
    right: 20,
    bottom: 15,
    top: 40,
    containLabel: true
   },
   xAxis: [
    {
     type: 'value',
     axisLine: {
      lineStyle: {
       color: '#999'
      }
     },
     axisLabel: {
      color: '#666'
     }
    }
   ],
   yAxis: [
    {
     type: 'category',
     axisTick: { show: false },
     data: ['汽車之家', '今日頭條', '百度貼吧', '一點(diǎn)資訊', '微信', '微博', '知乎'],
     axisLine: {
      lineStyle: {
       color: '#999'
      }
     },
     axisLabel: {
      color: '#666'
     }
    }
   ],
   series: [
    {
     name: '熱度',
     type: 'bar',
     label: {
      normal: {
       show: true,
       position: 'inside'
      }
     },
     data: [300, 270, 340, 344, 300, 320, 310]
    },
    {
     name: '正面',
     type: 'bar',
     stack: '總量',
     label: {
      normal: {
       show: true
      }
     },
     data: [120, 102, 141, 174, 190, 250, 220]
    },
    {
     name: '負(fù)面',
     type: 'bar',
     stack: '總量',
     label: {
      normal: {
       show: true,
       position: 'left'
      }
     },
     data: [-20, -32, -21, -34, -90, -130, -110]
    }
   ]
  };
 },
 getScaOption:function(){
  //請求數(shù)據(jù) 
  var data = [];
  var data2 = [];
  for (var i = 0; i < 10; i++) {
   data.push(
    [
     Math.round(Math.random() * 100),
     Math.round(Math.random() * 100),
     Math.round(Math.random() * 40)
    ]
   );
   data2.push(
    [
     Math.round(Math.random() * 100),
     Math.round(Math.random() * 100),
     Math.round(Math.random() * 100)
    ]
   );
  }
  var axisCommon = {
   axisLabel: {
    textStyle: {
     color: '#C8C8C8'
    }
   },
   axisTick: {
    lineStyle: {
     color: '#fff'
    }
   },
   axisLine: {
    lineStyle: {
     color: '#C8C8C8'
    }
   },
   splitLine: {
    lineStyle: {
     color: '#C8C8C8',
     type: 'solid'
    }
   }
  };
  return {
   color: ["#FF7070", "#60B6E3"],
   backgroundColor: '#eee',
   xAxis: axisCommon,
   yAxis: axisCommon,
   legend: {
    data: ['aaaa', 'bbbb']
   },
   visualMap: {
    show: false,
    max: 100,
    inRange: {
     symbolSize: [20, 70]
    }
   },
   series: [{
    type: 'scatter',
    name: 'aaaa',
    data: data
   },
   {
    name: 'bbbb',
    type: 'scatter',
    data: data2
   }
   ],
   animationDelay: function (idx) {
    return idx * 50;
   },
   animationEasing: 'elasticOut'
  };
 },
});

注意:異步加載時(shí),ec-canvas標(biāo)簽加載顯示要先于this.scaComponnet.init,否則會報(bào)錯(cuò)。

總結(jié)

以上所述是小編給大家介紹的微信小程序中使用ECharts 異步加載數(shù)據(jù)的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 你知道setTimeout是如何運(yùn)行的嗎?

    你知道setTimeout是如何運(yùn)行的嗎?

    你真的知道setTimeout是如何運(yùn)行的嗎?這篇文章主要介紹了setTimeout運(yùn)行方式,感興趣的小伙伴們可以參考一下
    2016-08-08
  • js實(shí)現(xiàn)簡單的日歷顯示效果函數(shù)示例

    js實(shí)現(xiàn)簡單的日歷顯示效果函數(shù)示例

    這篇文章主要介紹了js實(shí)現(xiàn)簡單的日歷顯示效果函數(shù),結(jié)合完整實(shí)例形式分析了JavaScript實(shí)現(xiàn)的日歷功能相關(guān)原理與具體操作技巧,需要的朋友可以參考下
    2019-11-11
  • 深入理解JS實(shí)現(xiàn)快速排序和去重

    深入理解JS實(shí)現(xiàn)快速排序和去重

    在js面試中快速排序和數(shù)組去重是比較常問的面試題,下面小編給大家分享下我對JS實(shí)現(xiàn)快速排序和去重的理解,感興趣的朋友一起看看吧
    2016-10-10
  • js倒計(jì)時(shí)簡單實(shí)現(xiàn)代碼

    js倒計(jì)時(shí)簡單實(shí)現(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了js倒計(jì)時(shí)簡單實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • PHP中CURL的幾個(gè)經(jīng)典應(yīng)用實(shí)例

    PHP中CURL的幾個(gè)經(jīng)典應(yīng)用實(shí)例

    這篇文章主要介紹了PHP中CURL的幾個(gè)經(jīng)典應(yīng)用實(shí)例,本文講解了cURL請求的基本步驟、在cURL中用POST方法發(fā)送數(shù)據(jù)、用cURL上傳文件等內(nèi)容,需要的朋友可以參考下
    2015-01-01
  • 淺談Webpack 是如何加載模塊的

    淺談Webpack 是如何加載模塊的

    這篇文章主要介紹了Webpack 是如何加載模塊的,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • 面向JavaScript入門初學(xué)者的二叉搜索樹算法教程

    面向JavaScript入門初學(xué)者的二叉搜索樹算法教程

    二叉搜索樹則是二叉樹的一種,但它只允許你在左側(cè)節(jié)點(diǎn)儲存比父節(jié)點(diǎn)小的值,右側(cè)只允許儲存比父節(jié)點(diǎn)大的值,這篇文章主要給大家介紹了關(guān)于JavaScript二叉搜索樹算法的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 一文詳解JavaScript的繼承機(jī)制

    一文詳解JavaScript的繼承機(jī)制

    在JavaScript中,繼承允許一個(gè)對象從另一個(gè)對象繼承屬性和方法,本文將詳細(xì)介紹JavaScript中的繼承機(jī)制,包括原型鏈、構(gòu)造函數(shù)、原型對象以及幾種實(shí)現(xiàn)繼承的方法,需要的朋友可以參考下
    2024-04-04
  • JS實(shí)現(xiàn)的簡單鼠標(biāo)跟隨DiV層效果完整實(shí)例

    JS實(shí)現(xiàn)的簡單鼠標(biāo)跟隨DiV層效果完整實(shí)例

    這篇文章主要介紹了JS實(shí)現(xiàn)的簡單鼠標(biāo)跟隨DiV層效果,涉及JavaScript基于時(shí)間函數(shù)動態(tài)操作頁面元素屬性的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-10-10
  • TypeScript?中使用?getter?和?setter的方法

    TypeScript?中使用?getter?和?setter的方法

    這篇文章主要介紹了TypeScript?中如何使用?getter?和?setter,?getter使我們能夠?qū)傩越壎ǖ皆谠L問屬性時(shí)調(diào)用的函數(shù),而?setter?將屬性綁定到在嘗試設(shè)置屬性時(shí)調(diào)用的函數(shù),需要的朋友可以參考下
    2023-04-04

最新評論