1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 微信小程序中使用ECharts--折线图 柱状图 饼图等

微信小程序中使用ECharts--折线图 柱状图 饼图等

时间:2022-05-04 06:08:12

相关推荐

微信小程序中使用ECharts--折线图 柱状图 饼图等

微信小程序开发者的反馈,表示他们强烈需要像 ECharts 这样的可视化工具。但是微信小程序是不支持 DOM 操作的,Canvas 接口也和浏览器不尽相同。

因此,ECharts 团队和微信小程序官方团队合作,提供了 ECharts 的微信小程序版本。开发者可以通过熟悉的 ECharts 配置方式,快速开发图表,满足各种可视化需求。

体验示例小程序

在微信中扫描下面的二维码即可体验 ECharts Demo:

GitHub 地址/ecomfe/echarts-for-weixin

如何使用:

ECharts在微信小程序中以组件的方式使用,所以非常简单

一、首先下载

下载项目到本地,并使用微信开发者工具打开,如下图

项目下载地址 GitHub 地址/ecomfe/echarts-for-weixin

可以自行从 ECharts 项目中下载最新发布版

在pages文件夹下每一个文件夹为一个图标样式

二、在自己项目中使用ECharts

1、首先把整个ec-canvas文件夹复制到自己项目中,位置可以自己定,我就放在最外面根目录下了

2、引用组件,

json:

在你要显示图表的页面的json配置文件中加入以下配置,这也是组件的使用方法

{"usingComponents": {"ec-canvas": "/ec-canvas/ec-canvas"}}

这一配置的作用是,允许我们在wxml中使用<ec-canvas>组件。注意路径的相对位置要写对,如果目录结构和本例相同,就应该像上面这样配置。

js:

引入js,

// import { echarts } from '../../ec-canvas/echarts.js'import * as echarts from '../../ec-canvas/echarts.js';

为什么上面注释掉的一行也发出来呢,为了告诉你们那样写不管用

完整带数据js:

import * as echarts from '../../ec-canvas/echarts';function initChart(canvas, width, height, dpr) {const chart = echarts.init(canvas, null, {width: width,height: height,devicePixelRatio: dpr // new});canvas.setChart(chart);var option = {title: {text: '测试下面legend的红色区域不应被裁剪',left: 'center'},legend: {data: ['A', 'B', 'C'],top: 50,left: 'center',backgroundColor: 'red',z: 100},grid: {containLabel: true},tooltip: {show: true,trigger: 'axis'},xAxis: {type: 'category',boundaryGap: false,data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'],// show: false},yAxis: {x: 'center',type: 'value',splitLine: {lineStyle: {type: 'dashed'}}// show: false},series: [{name: 'A',type: 'line',smooth: true,data: [18, 36, 65, 30, 78, 40, 33]}, {name: 'B',type: 'line',smooth: true,data: [12, 50, 51, 35, 70, 30, 20]}, {name: 'C',type: 'line',smooth: true,data: [10, 30, 31, 50, 40, 20, 10]}]};chart.setOption(option);return chart;}Page({onShareAppMessage: function (res) {return {title: 'ECharts 可以在微信小程序中使用啦!',path: '/pages/index/index',success: function () { },fail: function () { }}},data: {ec: {onInit: initChart}},onReady() {}});

wxml:

<view class="container"><ec-canvas id="mychart-dom-line" canvas-id="mychart-line" ec="{{ ec }}"></ec-canvas></view>

如果到这里你的页面还没显示图表,也没有报错,那就它加个样式

<ec-canvas style="width: 100%; height: 500px;" id="mychart-dom-line" canvas-id="mychart-line" ec="{{ ec }}">

最终效果

最笨的方法

直接把demo中pages下你所用的图表整个文件夹复制到你的项目,看好只要路径别错,改都不用改直接就可以用

重要提示:

全部图表的echarts.js非常大,如果你的项目较大可能会导致项目上传失败,

在你把整个js导入项目时开发者工具也会有如下提示:

[JS 文件编译错误] 以下文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理。ec-canvas/echarts.js

处理方法:

按你项目所需的图表定制化下载, 定制地址ECharts 在线构建

勾选你所需要的图表,最下方点下载,

下载完成后,

把新定制的echarts.min.js替换掉原来的echarts.js

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。