一、效果图

二、代码

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的更多相关文章

  1. 微信小程序中使用ECharts 异步加载数据 实现图表

    <!--pages/bar/index.wxml--> <view class="container"> <ec-canvas id="my ...

  2. 在微信小程序中使用 echarts 图片-例 折线图

    首先进入echarts官方[https://echarts.apache.org/handbook/zh/get-started/].这边只需要在小程序中简单应用一下echarts折线图 所以不需要把 ...

  3. 网页或微信小程序中使元素占满整个屏幕高度

    在项目中经常要用到一个容器元素占满屏幕高度和宽度,然后再在这个容器元素里放置其他元素. 宽度很简单就是width:100% 但是高度呢,我们知道的是height:100%必须是在父元素的高度给定了的情 ...

  4. 在微信小程序中使用富文本转化插件wxParse

    在微信小程序中我们往往需要展示一些丰富的页面内容,包括图片.文本等,基本上要求能够解析常规的HTML最好,由于微信的视图标签和HTML标签不一样,但是也有相对应的关系,因此有人把HTML转换做成了一个 ...

  5. 微信小程序中发送模版消息注意事项

    在微信小程序中发送模版消息 参考微信公众平台Api文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/notice.html#模版消息管理 此参考地址 ...

  6. 微信小程序中placeholder的样式

    通常,现代浏览器大多支持::placeholder选择器,用于设置placeholder的样式,但是在微信小程序中并不支持这种方式,而是提供了一个专门的属性(placeholder-class)来处理 ...

  7. 微信小程序中转义字符的处理

    在微信小程序开发过程中,有时候会用到常用的一些特殊字符如:‘<’.‘>’.‘&’.‘空格’等,微信小程序同样支持对转义字符的处理,下面提供两种方法用来处理微信小程序中转义字符的处理 ...

  8. 微信小程序中用户登录和登录态维护

    提供用户登录以及维护用户的登录状态,是一个拥有用户系统的软件应用普遍需要做的事情.像微信这样的一个社交平台,如果做一个小程序应用,我们可能很少会去做一个完全脱离和舍弃连接用户信息的纯工具软件. 让用户 ...

  9. 微信小程序中的组件使用1

    不管是vue还是react中,都在强调组件思想,同样,在微信小程序中也是使用组件思想来实现页面复用的,下面就简单介绍一下微信小程序中的组件思想. 组件定义与使用 要使用组件,首先需要有组件页面和使用组 ...

随机推荐

  1. servlet简单例子1

    servlet简单例子1 分类: servlet jsp xml2012-04-18 21:54 3646人阅读 评论(3) 收藏 举报 servletloginjspaction浏览器 LoginS ...

  2. bzoj 4571 美味 —— 主席树

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4571 区间找异或值最大,还带加法,可以用主席树: 可以按位考虑,然后通过加上之前已经有的答案 ...

  3. 杂项:WebRTC

    ylbtech-杂项:WebRTC WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的技术,是谷歌20 ...

  4. 2.jeesite增删改查

    一.准备数据 在数据库中中添加一张表和数据,以mysql为例 SET NAMES utf8; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------- ...

  5. Gym 100512B Betting Fast (题意+概率)

    题意:你开始有 s 元钱,然后你要在 t 场内赚到 n 元,每次赢的概率是 p,并且要越快越好. 析:当时没注意这个条件,要越快越好,然后写概率dp,怎么看也不像是对.其实是每次赌 min(s, n- ...

  6. HDU 5907 Find Q (水题)

    题意:在他眼前有一个小写字母组成的字符串SSS,他想找出SSS的所有仅包含字母'q'的连续子串. 析:这个题,很容易发现,有 n 个连续个q,就是前 n 项和.注意不要超 int. 代码如下: #pr ...

  7. bzoj 4825: [Hnoi2017]单旋【dfs序+线段树+hash】

    这个代码已经不是写丑那么简单了--脑子浆糊感觉np++分分钟想暴起打死我--就这还一遍A过了-- 先都读进来hash一下,因为是平衡树所以dfs序直接按照点值来就好 对于每个操作: 1:set维护已插 ...

  8. 洛谷P4331 [BOI2004]Sequence 数字序列(左偏树)

    传送门 感觉……不是很看得懂题解在说什么? 我们先把原数列$a_i-=i$,那么本来要求递增序列,现在只需要求一个非严格递增的就行了(可以看做最后每个$b_i+=i$,那么非严格递增会变为递增) 如果 ...

  9. Python unittest基本框架组成(1)

    Python的标准库——unittest(可以实现自动化测试框架的搭建) python unittest四大组成“元件”: test fixture(测试脚手架)——测试代码的运行环境,指测试准备前和 ...

  10. failed to push some refs to 'https://gitee.com/ftl_663/java-shop.git'

    1.git init 2.git add . 3.git commit  -m "init" 4.git remote add origin  https://gitee.com/ ...