微信小程序使用echarts - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

微信小程序使用echarts

发表时间:2020-10-16

发布人:葵宇科技

浏览次数:36

本人前段时间做小程序时遇到了一个需要使用图表的需求如下面这样:

https://blog.csdn.net/liuzc0221/article/details/109111484
这是一个很典型的饼图,首先想到了使用echarts图表库,查阅echarts官方文档发现echarts和微信小程序官方合作推出了echarts小程序版,话不多说,直接进入正题。

  1. 首先,下载 GitHub 上的 ecomfe/echarts-for-weixin 项目。
  2. 把ec-canvas拷贝到项目相关目录中。
  3. 在需要使用echarts的页面demo.json:
 "usingComponents": {
    "ec-canvas":"../../../ec-canvas/ec-canvas", //路径根据自己实际项目修改
  },
  1. demo.js:
import * as echarts from '../../../ec-canvas/echarts'  //引入echarts
let chart, work,rest;  //定义全局变量
function getOption(work,rest){
    let option = {     //echarts配置项可查阅官方文档根据自己需求进行相应配置
        tooltip: {
            trigger: 'item',
            formatter: '{b}: {d}%'
        },
        series: [
            {
                type: 'pie',
                radius: ['65%', '80%'],
                label: {
                    show: false,
                    position: 'center'
                },
                data: [
                    {value: work, name: '工作时间'},
                    {value: rest, name: '休息时间'},
                ]
            }
        ],
        color:['#1ddab8','#eaeaea']
    };
    return option;
}
Page({
  data: {
      ec: {
       >: function initChart(canvas, width, height) {
            chart = echarts.init(canvas, null, {
              width: width,
              height: height
            });
            canvas.setChart(chart);
            let option = getOption(work,rest);
            chart.setOption(option);
        }
      }
  },

  /**
 1. 生命周期函数--监听页面加载
   */
 >: function (options) {
     work=525;rest=195;  //这里根据自己的请求获取对应数据赋值给work,rest
     // 赋值完成后调用这两步更新图表
     let option = getOption(work,rest);
     chart.setOption(option);
  },
  ...
})
  1. demo.wxml:
<view class="day">
    <ec-canvas  ec="{{ ec }}"></ec-canvas>
    <view>总时间长<text>8小时45分钟</text></view>
</view>
  1. css就不贴了相信你们都能搞定。

注意:如果你的ec-canvas文件夹拷贝在某一个分包(subPackages)中,那所有使用echarts的页面都必须在那个分包目录下,否则会出现不能跨包引用的错误。

相关案例查看更多