微信小程序中使用echarts
一、效果图

二、代码
import * as echarts from '../../component/ec-canvas/echarts';
const app = getApp();
var xData = ["1:00", "2:00", "3:00", "4:00", "5:00", "6:00", "7:00", "8:00", "9:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00"], yData = [], chart, charts, pc=0, mobile=0;
function initChart(canvas, width, height) {
chart = echarts.init(canvas, null, {
width: width,
height: height
});
canvas.setChart(chart);
var option = {
color: ["#37A2DA"],
xAxis: {
type: 'category',
boundaryGap: false,
data: xData,
},
yAxis: {
x: 'center',
type: 'value'
},
series: [{
type: 'line',
smooth: true,
data: yData
}]
};
chart.setOption(option);
return chart;
}
function initCharts(canvas, width, height) {
charts = echarts.init(canvas, null, {
width: width,
height: height
});
canvas.setChart(charts); var options = {
color: ["#3498DB", "#E062AE"],
tooltip: {
trigger: 'item',
formatter: "{a} {b}: {c} ({d}%)"
},
legend: {
orient: 'vertical',
x: 'left',
paddingTop: '50px',
data: ['移动端', 'PC端']
},
grid: {
left: 20,
right: 20,
bottom: 15,
top: 40,
containLabel: true
}, series: [
{
name: '访问来源',
type: 'pie',
label: {
normal: {
show: true,
position: 'outside',
formatter: '{b}:{c}'
},
emphasis: {
show: true,
textStyle: {
fontSize: '20',
fontWeight: 'bold'
}
}
},
data: [
{ value: mobile, name: "移动端" },
{ value: pc, name:"PC端"}
]
}
]
}; charts.setOption(options);
return charts;
}
Page({
data: {
tabs: ["今日", "昨日", "近7日", "近30日"],
activeIndex: 0,
sliderOffset: 0,
sliderLeft: 0,
ec: {
onInit: initChart
},
ecs: {
onInit: initCharts
}
},
onLoad: function (options) {
var that = this;
app.initNavbar(that);
},
onShow: function () {
var that = this;
setTimeout(function () {
that.getDataInfo(0)
}, 500)
},
tabClick: function (e) {
this.setData({
sliderOffset: e.currentTarget.offsetLeft,
activeIndex: e.currentTarget.id
});
this.getDataInfo(e.currentTarget.id);
},
getDataInfo(index) {
wx.showLoading({
title: '正在加载...',
mask: true
});
var that = this;
wx.request({
url: app.api.getData,
data: {
userid: wx.getStorageSync("userInfo").userid,
action: index
},
success(res) {
var yData = res.data.yData;
var xData = res.data.xData;
var option = chart.getOption();
option.series[0].data = yData;
option.xAxis = {
type: 'category',
boundaryGap: false,
data: xData,
};
chart.setOption(option, true);
var options = charts.getOption();
options.series[0].data[0].value = res.data.mobile.num;
options.series[0].data[1].value = res.data.pc.num;
charts.setOption(options, true);
that.setData({
ip: res.data.ip,
messall: res.data.messall,
view: res.data.view
})
},
error() {
app.errorModal("网络出错");
},
complete() {
wx.hideLoading();
}
})
}
})
<ec-canvas id="mychart-dom-line" canvas-id="mychart-line" ec="{{ ec }}"></ec-canvas>
三、下载
下载ec-cavas地址:https://github.com/ecomfe/echarts-for-weixin
四、Demo

微信小程序中使用echarts的更多相关文章
- 微信小程序中使用ECharts 异步加载数据 实现图表
<!--pages/bar/index.wxml--> <view class="container"> <ec-canvas id="my ...
- 在微信小程序中使用 echarts 图片-例 折线图
首先进入echarts官方[https://echarts.apache.org/handbook/zh/get-started/].这边只需要在小程序中简单应用一下echarts折线图 所以不需要把 ...
- 网页或微信小程序中使元素占满整个屏幕高度
在项目中经常要用到一个容器元素占满屏幕高度和宽度,然后再在这个容器元素里放置其他元素. 宽度很简单就是width:100% 但是高度呢,我们知道的是height:100%必须是在父元素的高度给定了的情 ...
- 在微信小程序中使用富文本转化插件wxParse
在微信小程序中我们往往需要展示一些丰富的页面内容,包括图片.文本等,基本上要求能够解析常规的HTML最好,由于微信的视图标签和HTML标签不一样,但是也有相对应的关系,因此有人把HTML转换做成了一个 ...
- 微信小程序中发送模版消息注意事项
在微信小程序中发送模版消息 参考微信公众平台Api文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/notice.html#模版消息管理 此参考地址 ...
- 微信小程序中placeholder的样式
通常,现代浏览器大多支持::placeholder选择器,用于设置placeholder的样式,但是在微信小程序中并不支持这种方式,而是提供了一个专门的属性(placeholder-class)来处理 ...
- 微信小程序中转义字符的处理
在微信小程序开发过程中,有时候会用到常用的一些特殊字符如:‘<’.‘>’.‘&’.‘空格’等,微信小程序同样支持对转义字符的处理,下面提供两种方法用来处理微信小程序中转义字符的处理 ...
- 微信小程序中用户登录和登录态维护
提供用户登录以及维护用户的登录状态,是一个拥有用户系统的软件应用普遍需要做的事情.像微信这样的一个社交平台,如果做一个小程序应用,我们可能很少会去做一个完全脱离和舍弃连接用户信息的纯工具软件. 让用户 ...
- 微信小程序中的组件使用1
不管是vue还是react中,都在强调组件思想,同样,在微信小程序中也是使用组件思想来实现页面复用的,下面就简单介绍一下微信小程序中的组件思想. 组件定义与使用 要使用组件,首先需要有组件页面和使用组 ...
随机推荐
- HDU1087 Super Jumping! Jumping! Jumping! —— DP
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1087 Super Jumping! Jumping! Jumping! Time Limi ...
- CollectionView旋转水平卡片布局
概述 UICollectionView真的好强大,今天我们来研究一下这种很常见的卡片动画效果是如何实现了.本篇不能太深入地讲解,因为笔者也是刚刚摸索出点眉目,但是并没有深刻地理解.如果在讲解过程中,出 ...
- CF 809 D Hitchhiking in the Baltic States —— 思路+DP(LIS)+splay优化
题目:http://codeforces.com/contest/809/problem/D 看题解,抄标程...发现自己连 splay 都快不会写了... 首先,题目就是要得到一个 LIS: 但与一 ...
- hdu 5534
题目描述:n个节点度数之和为n-2,每个节点预分配了1个度,任意分配度数是否有可能形成树? 从1到n节点,考虑树的形状,考虑分配给当前节点i的度数,并且注意到当前节点的度数不会影响其他节点(之前或者之 ...
- 在Centos下安装httpd、php、Mysql并配置(转载)
转自:http://club.jledu.gov.cn/?action-viewspace-itemid-299020 1.安装Apahce, PHP, Mysql, 以及php连接mysql库组件. ...
- C# 多边形面积计算公式
最近在做地图相关面积计算显示工作,百度了很多关于多边形面积计算方面公式和代码,只能说贼费劲,最终完成了把结果展示下 原理:鞋带公式 定义:所述鞋带式或鞋带算法(也称为高斯的面积公式和测量员的式 ...
- Mac下Ruby升级与Rails的安装
也是醉了,网上查了半天一脸懵逼.然后自己动手试试 gem install rails瞬间命令行就没反应了,以为命令行挂了,但是一会儿报错说是没有权限. 好吧,那么来这个 sudo gem instal ...
- thinkphp5.0常遇到的错误
call a member xxxx on null 1.一般是没有继承controller: 2.对象和数组使用错误.
- ______________从时间超限到800ms 到200ms——————2098
分拆素数和 Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total Submission(s): Accepted S ...
- play framework
Compilation errorThe file {module:docviewer}/app/controllers/PlayDocumentation.java could not be com ...