微信小程序中使用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 相关文章推荐
IE和FireFox(FF)中js和css的不同
Apr 13 Javascript
js 实现打印网页中定义的部分内容的代码
Apr 01 Javascript
js+css在交互上的应用
Jul 18 Javascript
JavaScript实现网页图片等比例缩放实现代码及调用方式
Feb 25 Javascript
js输出阴历、阳历、年份、月份、周示例代码
Jan 29 Javascript
javascritp添加url参数将参数加入到url中
Sep 25 Javascript
node.js中的querystring.parse方法使用说明
Dec 10 Javascript
JavaScript数据结构与算法之集合(Set)
Jan 29 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
Jun 15 Javascript
element el-input directive数字进行控制
Oct 11 Javascript
自定义Vue组件打包、发布到npm及使用教程
May 22 Javascript
vue+elementUI组件table实现前端分页功能
Nov 15 Javascript
基于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
php二维数组排序详解
2013/11/06 PHP
PHP连接MySQL进行增、删、改、查操作
2017/02/19 PHP
JavaScript高级程序设计 阅读笔记(二十一) JavaScript中的XML
2012/09/14 Javascript
jQuery $.data()方法使用注意细节
2012/12/31 Javascript
JS动态获取当前时间,并写到特定的区域
2013/05/03 Javascript
JS获得URL超链接的参数值实例代码
2013/06/21 Javascript
浅析return false的正确使用
2013/11/04 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
js获取浏览器基本信息大全
2014/11/27 Javascript
浅谈Jquery为元素绑定事件
2015/04/27 Javascript
jQuery电话号码验证实例
2017/01/05 Javascript
JavaScript 正则命名分组【推荐】
2018/06/07 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
2019/06/10 jQuery
Layui数据表格判断编辑输入的值,是否为我需要的类型详解
2019/10/26 Javascript
Vue Cli3 打包配置并自动忽略console.log语句的方法
2020/04/23 Javascript
[01:09]DOTA2次级职业联赛 - 99战队宣传片
2014/12/01 DOTA
Python实现图片转字符画的示例代码
2017/08/21 Python
Django 生成登陆验证码代码分享
2017/12/12 Python
python使用tkinter库实现五子棋游戏
2019/06/18 Python
Python如何读取、写入CSV数据
2020/07/28 Python
HTML5 Canvas实现360度全景图的示例代码
2018/01/29 HTML / CSS
美国最便宜的旅游网站:CheapTickets
2017/07/09 全球购物
专科毕业生求职简历的自我评价
2013/10/12 职场文书
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
质检部经理岗位职责
2014/02/19 职场文书
政治思想表现评语
2014/05/04 职场文书
2014年党的群众路线教育实践活动整改措施(个人版)
2014/09/25 职场文书
护士自我推荐信范文
2015/03/24 职场文书
机器人总动员观后感
2015/06/09 职场文书
2015年幼儿园国庆节活动总结
2015/07/30 职场文书
2015年国庆节演讲稿范文
2015/07/30 职场文书
《爬天都峰》教学反思
2016/02/23 职场文书
八年级作文之感悟亲情
2019/11/20 职场文书
《好妈妈胜过好老师》:每个孩子的优秀都是有源头的
2020/01/03 职场文书
5个pandas调用函数的方法让数据处理更加灵活自如
2022/04/24 Python