小程序使用echarts记录(一)

最近公司新项目,要用小程序开发图表,之前在PC上做过好多echarts图表(其实就是懒)的情况下,二营长把意大利炮拉上来,小程序版本在这里

  1. 老规矩先下demo,拷贝 ec-canvas 目录到新建的项目下
  2. 创建index模块,在index.json中配置图表项,这样我们就可以在index.wxml 中使用 <ec-canvas>组件
{
  "usingComponents": {
    "ec-canvas": "../../componts/ec-canvas/ec-canvas"
  }
}
  1. 在index.wxml中创建<ec-canvas>组件
<view class="chart-view" >
   <ec-canvas id="mychart-dom-bar" class='mychart' canvas-id="mychart-bar" ec="{{ ec }}">	</ec-canvas>
</view>

其中 ec 是一个我们在 index.js 中定义的对象,它使得图表能够在页面加载后被初始化并设置。index.js 的结构如下:

import * as echarts from '../../componts/ec-canvas/echarts';
function initChart(canvas, width, height, dpr) {
  const chart = echarts.init(canvas, null, {
    width: width,
    height: height,
    devicePixelRatio: dpr // 像素
  });
  canvas.setChart(chart);

  var option = {
    ...
  };
  chart.setOption(option);
  return chart;
}

Page({
  data: {
    ec: {
      onInit: initChart
    }
  }
});
  • 到这里最简单的demo就完成了,说几个注意事项:

  • class名为container这个view标签需要 保证图表的初始化的时候是有宽度和高度的,不然无法出现图表

  • 最新版的 ECharts 微信小程序支持微信 Canvas 2d,当用户的基础库版本 >= 2.9.0 且没有设置 force-use-old-canvas=“true” 的情况下,使用新的 Canvas 2d(默认)。使用新的 Canvas 2d 可以提升渲染性能,解决非同层渲染问题,强烈建议开启,如果仍需使用旧版 Canvas,如下:

 <ec-canvas id="xxx" canvas-id="xxx" ec="{{ ec }}" force-use-old-canvas="true"></ec-canvas>

————————————————————————————————————————————

下一篇会介绍,如何在一个页面同时创建多个图表

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值