• 小程序图表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,   //不绘制饼图(圆环图)各区块的白色分割线
                 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: {
                     30
                  }
                },
                 windowWidth,
                height: 300,
                dataLabel: true
          
          //划掉的是categories的值
       }); 
    }
    else{
      console.log(
    '无图表数据')
    }
  • 相关阅读:
    go 1.14.3安装micro报错处理记录
    关于redis哨兵机制的一些疑问
    TCP中异常关闭的情况记录
    mysql sleep 死锁例子
    ubuntu16.04 安装go
    innodb存储引擎之内存
    ubuntu16.04环境LNMP实现PHP5.6和PHP7.2
    mysql使用存储过程,批量生成测试数据
    mysql 关于字符串搜索的函数
    电脑上的windows键突然失灵了,肿么办
  • 原文地址:https://www.cnblogs.com/dudu123/p/10400806.html
Copyright © 2020-2023  润新知