1、下载
https://github.com/ecomfe/echarts-for-weixin
2、将ec-canvas目录复制到工程中。

3、创建line折线图。

line.js
import * as echarts from '../../ec-canvas/echarts'; // 引入echarts.js
var arr_init = [];
var arr_x = [];
var arr_y = [];
var chart = null;
Page({
/**
* 页面的初始数据
*/
data: {
ec: {
lazyLoad: true // 延迟加载
}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.echartsComponnet = this.selectComponent('#cts-chart');
// 获取数据
this.getData();
},
getData: function () {
/**
* 模拟wx.request获取json
*/
arr_init = [{ "name": "9001", "age": "28" }, { "name": "9002", "age": "29" }, { "name": "9003", "age": "30" }, { "name": "9004", "age": "31" }, { "name": "9005", "age": "32" }, { "name": "9005", "age": "33" }];
//arr_x = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'];
//arr_y = [100, 200, 300, 500, 600, 700, 800];
for (let i = 0; i < arr_init.length; i++) {
console.log(arr_init[i]);
// x轴
arr_x.push(arr_init[i]['name']);
// y轴
arr_y.push(arr_init[i]['age']);
}
// 如果是第一次绘制
if (!chart) {
// 初始化图表
this.init_echarts();
} else {
// 更新数据
this.setOption(chart);
}
},
// 初始化图表
init_echarts: function () {
this.echartsComponnet.init((canvas, width, height) => {
// 初始化图表
chart = echarts.init(canvas, null, {
width: width,
height: height
});
//
this.setOption(chart);
// 注意这里一定要返回 chart 实例,否则会影响事件处理
return chart;
});
},
setOption: function (Chart) {
// 清除
chart.clear();
// 获取新数据
chart.setOption(this.getOption());
},
getOption: function () {
// 指定图表的配置项和数据
var option = {
title: {
text: '折线图'
},
grid: {
left: 20,
right: 20,
bottom: 15,
top: 40,
containLabel: true
},
xAxis: {
type: 'category',
data: arr_x
},
yAxis: {
type: 'value'
},
series: [{
type: 'line',
data: arr_y,
// 显示数值
itemStyle: { normal: { label: { show: true } } }
}]
}
return option;
},
})
line.json
{
"usingComponents": {
"ec-canvas": "../../ec-canvas/ec-canvas"
}
}
line.wxml
<!--index.wxml-->
<view class="container">
<ec-canvas id="cts-chart" canvas-id="mychart-line" ec="{{ ec }}"></ec-canvas>
</view>
line.wxss
/**index.wxss**/
ec-canvas {
width: 100%;
height: 100%;
}
