小程序图表wx-chart
下载地址
https://github.com/xiaolin3303/wx-charts
使用步骤:
一、解压后,把dist里面的wxcharts.js或者wxcharts-min.js放在小程序的文件夹里,在当前页面引用文件。

二、需要使用图表的wxss页面中加canvas的宽高值,若没有加则不显示

.canvas {
width: 100%;
height: 300px;
}
三、在需要使用图表的wxml 页面中加xml代码
ring 环形图
<canvas canvas-id="ringCanvas" class="canvas"></canvas>
column柱状图
<canvas canvas-id="columnCanvas" class="canvas"></canvas>
四、在需要使用图表的js页面中添加js代码
首先引入从git上下载的wxchart.js
const wxCharts = require('../../../../utils/ai/wxcharts.js'); // 引入wx-charts.js文件
var app = getApp();
var ringChart = null;
var columnChart = null;

if (that.data.chart.data.length > 0 && that.data.chart.type == 'pie') {//饼图
var _series=[];
//ring图 处理数据为百分比并保留2位小数
that.data.chart.data.forEach((r)=>{
_series.push({
name: r.name,
data: r.value,
stroke: false
})
})
//_series 值如下 必须有name、data、stroke 属性

ringChart = new wxCharts({
animation: true, //是否开启动画
canvasId: 'ringCanvas', //输入wxml中canvas的id
type: 'ring', //类型是 环形
extra: {
ringWidth: 18, //环形的宽度
pie: {
offsetAngle: -45
}
},
title: {
name: (that.data.chart.data[0].value * 100).toFixed(0) + '%',
color: '#4d93f7',
fontSize: 25
},
subtitle: {
name: that.data.chart.data[0].name,
color: '#333333',
fontSize: 15
},

series: _series,
disablePieStroke: true, //不绘制饼图(圆环图)各区块的白色分割线
width: windowWidth, //canvas宽度,单位为px
height:250, //canvas高度,单位为px
dataLabel: false, //是否在图表中显示数据内容值
legend: false, //是否显示图表下方各类别的标识
background: '#f5f5f5',
padding: 0
});
}else if (that.data.chart.data.length > 0 && that.data.chart.type == 'bar') {//柱状图
var _series = [];
var _categories = [];
//column图 处理数据为百分比并保留2位小数
that.data.chart.data.forEach((r) => {
_series.push((r.value*100).toFixed(0) ); //[21, 25, 30, 29, 37, 34]
_categories.push(r.name) //["保证书、认错书、悔过书", "照片", "聊天记录", "证人证言", "录音", "视频"]
})
// console.log(_categories)
columnChart = new wxCharts({
canvasId: 'columnCanvas',
type: 'column',
categories: _categories,
series: [
{
name: _categories[0],
data: _series,
format: function (val) {
return val + '%';
}
},
],
yAxis: {
format: function (val) {
return val;
}
},
extra: {
column: {
width: 30
}
},
width: windowWidth,
height: 300,
dataLabel: true
//划掉的是categories的值
});
}else{
console.log('无图表数据')
}
小程序图表wx-chart的更多相关文章
- 微信小程序图表插件 - wx-charts
微信小程序图表插件(wx-charts)基于canvas绘制,体积小巧支持图表类型饼图.线图.柱状图 .区域图等图表图形绘制,目前wx-charts是微信小程序图表插件中比较强大好使的一个. wx-c ...
- 今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2
今天微信小程序发现wx.request不好使了,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2 查官方文档 解决方法 在 PowerShell中运行以下内容, 然后重启服务器 # Enab ...
- 微信小程序遍历wx:for,wx:for-item,wx:key
微信小程序中wx:for遍历默认元素为item,但是如果我们设计多层遍历的时候我们就需要自定义item的字段名以及key的键名 wx:for="{{item.goodsList}}" ...
- 小程序调用wx.chooseLocation接口的时候无法获取权限(ios)
ios手机小程序调用wx.chooseLocation接口的时候,获取权限的时候报authorize:fail:require permission desc这样子的错误,这是由于苹果的安全机制导致需 ...
- 微信 小程序 drawImage wx.canvasToTempFilePath wx.saveFile 获取设备宽高 尺寸问题
以下问题测试环境为微信开发者0.10.102800,手机端iphone6,如有不对敬谢指出. 根据我的测试,context.drawImage,在开发者工具中并不能画出来,只有预览到手机中显示. wx ...
- 【微信小程序】wx.openLocation调取失败
在调取地图的时候发现,wx.openLocation的方法在模拟器和安卓手机上都可以用,在苹果手机上报错. 报错为调取失败:fail invoke too frequently ...
- 小程序使用wx.chooseAddress获取用户手机号码,微信chooseAddress接口获取用户收货信息
通常用户在商城购买产品后,需要填写他的收货信息,方便我们发货,但是在手机上写字非常不方便,一个客户的收货信息包括:姓名,地址和手机号码这些内容全部填写的话,至少要写20个字. 地址 所以有些客户在手机 ...
- 【微信小程序】 wx:if 与 hidden(隐藏元素)区别
wx:if 与 hidden 都可以控制微信小程序中元素的显示与否. 区别: wx:if 是遇 true 显示,hidden 是遇 false 显示. wx:if 在隐藏的时候不渲染,而 hidden ...
- 小程序 滚动wx.pageScrollTo
API:https://developers.weixin.qq.com/miniprogram/dev/api/wx.pageScrollTo.html wx.pageScrollTo 在小程序的开 ...
随机推荐
- Atitit.如何文章写好 论文 文章 如何写好论文 技术博客
Atitit.如何文章写好 论文 文章 如何写好论文 技术博客 1. 原则 1 1.1. 有深度, 有广度 1 1.2. 业务通用性有通用性 尽可能向上抽象一俩层..业务通用性与语言通用性. 2 ...
- 如何在宿主机上查看kvm虚拟机的IP
# arp -a ? (:3c:ce::f2: [ether] on br0 gateway (:c8:ac:d5 [ether] on br0 ? (:d4:fc: [ether] on br0 ? ...
- [Java并发编程(三)] Java volatile 关键字介绍
[Java并发编程(三)] Java volatile 关键字介绍 摘要 Java volatile 关键字是用来标记 Java 变量,并表示变量 "存储于主内存中" .更准确的说 ...
- Specified version of key is not available (44)
-- ::, ERROR [HiveServer2-Handler-Pool: Thread-]: transport.TSaslTransport (TSaslTransport.java:open ...
- 通过动态SQL语句创建游标
DECLARE @sql varchar(100); DECLARE @TableName varchar(32); DECLARE @FieldName varchar(32); DECLARE @ ...
- FasterRCNN 提升分类精度(转)
近年来,随着深度学习的崛起,计算机视觉得到飞速发展.目标检测作为计算机视觉的基础算法,也搭上了深度学习的快车.基于Proposal的检测框架,从R-CNN到Faster R-CNN,算法性能越来越高, ...
- Android打开doc、xlsx、ppt等office文档解决方案
妹子我写代码很辛苦/(ㄒoㄒ)/~~ ,转载请标明出处哦~http://blog.csdn.net/u011791526/article/details/73088768 1.Android端有什么控 ...
- MySQL优化之——备份和恢复
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46766919 备份 逻辑备份方法 使用MYSQLDUMP命令备份 MYSQLDUM ...
- js插件解读
1.calendar.js:日期插件:2.html5shiv.js:用于解决IE9以下版本浏览器对HTML5新增标签不识别,并导致CSS不起作用的问题的js文件:3.jquery.js里的代码是没有进 ...
- 常见机试题分析Java版
1. 操作系统任务分为系统任务和用户任务两种.其中,系统任务的优先级<50,用户任务的优先级>=50且<=255.优先级大于255的为非法任务,应予以剔除.现有一任务队列task[] ...
