微信小程序中使用echarts的实现方法


Posted in Javascript onApril 24, 2019

刚开始学微信小程序,有说的不对的地方大家可以提出!

首先体验示例小程序

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

微信小程序中使用echarts的实现方法

下载

为了兼容小程序 Canvas,我们提供了一个小程序的组件,用这种方式可以方便地使用 ECharts。

首先,下载 GitHub 上的 ecomfe/echarts-for-weixin 项目。

其中,ec-canvas 是我们提供的组件,其他文件是如何使用该组件的示例。

ec-canvas 目录下有一个 echarts.js,默认我们会在每次 echarts-for-weixin 项目发版的时候替换成最新版的 ECharts。如有必要,可以自行从 ECharts 项目中下载最新发布版,或者从官网自定义构建以减小文件大小。

引入组件

微信小程序的项目创建可以参见微信公众平台官方文档。

在创建项目之后,可以将下载的 ecomfe/echarts-for-weixin 项目完全替换新建的项目,然后将修改代码;或者仅拷贝 ec-canvas 目录到新建的项目下,然后做相应的调整。

如果采用完全替换的方式,需要将 project.config.json 中的 appid 替换成在公众平台申请的项目 id。pages 目录下的每个文件夹是一个页面,可以根据情况删除不需要的页面,并且在 app.json 中删除对应页面。

创建图表

首先,在 pages/bar 目录下新建以下几个文件:index.js、 index.json、 index.wxml、 index.wxss。并且在 app.json 的 pages 中增加 ‘pages/bar/index'。

index.json 配置如下:

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

这一配置的作用是,允许ECharts在 pages/bar/index.wxml 中使用 组件。注意路径的相对位置要写对,如果目录结构和本例相同,就应该像上面这样配置。

index.wxml 中,ECharts创建了一个 组件,内容如下:

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

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

function initChart(canvas, width, height) {
 const chart = echarts.init(canvas, null, {
 width: width,
 height: height
 });
 canvas.setChart(chart);

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

Page({
 data: {
 ec: {
  onInit: initChart
 }
 }
});

这对于所有 ECharts 图表都是通用的,用户只需要修改上面 option 的内容,即可改变图表。option 的使用方法参见ECharts 配置项文档。对于不熟悉 ECharts 的用户,可以参见 5 分钟上手 ECharts 教程。

下面是小程序的折线图demo:

1、首先是在pages文件夹下面新建line文件夹,里面对应的line.js、line.json、line.wxml、line.wxss

2、line.xml文件下面的代码:

微信小程序中使用echarts的实现方法

3.line.wxss代码如下:

微信小程序中使用echarts的实现方法

4、line.json代码:(注意该路径是我项目的路径,大家改成自己项目路径即可)

微信小程序中使用echarts的实现方法

5、line.js代码:

微信小程序中使用echarts的实现方法

最终完成效果:

微信小程序中使用echarts的实现方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery中的bind绑定事件与文本框改变事件的临时解决方法
Aug 13 Javascript
Javascript中arguments对象详解
Oct 22 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
Nov 30 Javascript
jQuery实现点击任意位置弹出层外关闭弹出层效果
Oct 19 Javascript
jQuery实现给input绑定回车事件的方法
Feb 09 Javascript
Angular 4根据组件名称动态创建出组件的方法教程
Nov 01 Javascript
原生JS实现网页手机音乐播放器 歌词同步播放的示例
Feb 02 Javascript
浅谈super-vuex使用体验
Jun 25 Javascript
vue中引用swiper轮播插件的教程详解
Aug 16 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
May 07 Javascript
JS实现简单移动端鼠标拖拽
Jul 23 Javascript
基于jQuery拖拽事件的封装
Nov 29 jQuery
基于mpvue小程序使用echarts画折线图的方法示例
Apr 24 #Javascript
详解微信小程序开发用户授权登陆
Apr 24 #Javascript
微信小程序实现的一键拨号功能示例
Apr 24 #Javascript
详解vue中使用vue-quill-editor富文本小结(图片上传)
Apr 24 #Javascript
微信小程序实现的图片保存功能示例
Apr 24 #Javascript
vue中的inject学习教程
Apr 24 #Javascript
浅谈Webpack多页应用HMR卡住问题
Apr 24 #Javascript
You might like
Codeigniter的一些优秀特性总结
2015/01/21 PHP
Yii2 批量插入、更新数据实例
2017/03/15 PHP
PHP中模糊查询并关联三个select框
2017/06/19 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
2019/05/08 PHP
laravel 验证错误信息到 blade模板的方法
2019/09/29 PHP
HTML DOM的nodeType值介绍
2011/03/31 Javascript
简单实现bootstrap导航效果
2017/02/07 Javascript
JS正则表达式验证账号、手机号、电话和邮箱是否合法
2017/03/08 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
vue2实现可复用的轮播图carousel组件详解
2017/11/27 Javascript
vue中路由参数传递可能会遇到的坑
2017/12/07 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
vue.js2.0 实现better-scroll的滚动效果实例详解
2018/08/13 Javascript
vue-cli中vue本地实现跨域调试接口
2019/01/16 Javascript
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
微信小程序中网络请求缓存的解决方法
2019/12/29 Javascript
Python的设计模式编程入门指南
2015/04/02 Python
Python使用matplotlib实现绘制自定义图形功能示例
2018/01/18 Python
pyqt5的QComboBox 使用模板的具体方法
2018/09/06 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
Python Opencv提取图片中某种颜色组成的图形的方法
2019/09/19 Python
scrapy在python爬虫中搭建出错的解决方法
2020/11/22 Python
CSS3圆角和渐变2种常用功能详解
2016/01/06 HTML / CSS
联想台湾官网:Lenovo TW
2018/05/09 全球购物
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
Tessabit美国:集世界奢侈品和设计师品牌的意大利精品买手店
2020/06/29 全球购物
测控技术与仪器个人求职信范文
2013/12/30 职场文书
《藏戏》教学反思
2014/02/11 职场文书
酒店大堂副理的职责范文
2014/02/13 职场文书
2014学雷锋活动总结
2014/03/09 职场文书
教学评估实施方案
2014/03/16 职场文书
教师个人查摆剖析材料
2014/10/14 职场文书
2014年化验室工作总结
2014/11/21 职场文书
教师学期末个人总结
2015/02/13 职场文书
大学生就业意向书
2015/05/11 职场文书
农村婚礼司仪主持词
2015/06/29 职场文书