小程序中使用echarts

小程序中使用echarts

之前没有在小程序中使用 查了一些资料终于做出来了 代码如下

下载

首先,下载 GitHub 上面的 ecomfe/echarts-for-weixin 项目。
在项目中的page文件引入ec-canvas文件
在项目中的page
在需要的页面引入组件
在这里插入图片描述
在wxml写入 因为我这里是使用之前老版的canvas 这里要加入force-use-old-canvas=“true” 不然页面会报错
在这里插入图片描述
之后就在js里面实现代码啦先在js中引入 自定义一个变量 方便后面定义
这边我使用后台的数据进行实时更新的
在js里面也引入 一下
在data数据里面定义ec数据 数据不要写死 在请求到数据之后再自定义数据

  ec: {
      onInit: function (canvas, width, height) {
        barec = echarts.init(canvas, null, {
          width: width,
          height: height
        });
        canvas.setChart(barec);
        return barec;

      }
    }

在这里插入图片描述
这边是我在后台拿到数据之后对canvas进行的自定义操作
考虑到几个不同的状态显示 就定义在一个函数里面啦

 setOptions: function (data) {
    let counts = data
    setTimeout(() => {   // 在渲染的时候会出现setOption为null的情况 暂时还没找到方法 就使用了                      定时器曲线救国 o(╥﹏╥)o
      barec.setOption({
        color: ['#BC261D'],
        tooltip: {
          show: false
        },
        grid: {
          top: '11.32%',
          bottom: '15%',
          left: '12%',
          right: '4%'
        },
        xAxis: {
             data: ["未访问", "已访问", "已签到", "已点赞",],  //这边是X轴线上的数据值 我这边是直接写死的  动态的话直接在counts  里面拿就行
          axisTick: {
            show: false
          },
          axisLine: {
            lineStyle: {
              color: '#F8DFDE',
            },
          },
          axisLabel: {
            textStyle: { //改变刻度字体样式
              color: '#161616'
            }
          }
        },
        yAxis: {
          splitLine: {
            lineStyle: { type: 'dashed', color: "#F8DFDE" }
          },
          axisLabel: {     // 轴文字
            textStyle: {
              color: '#828282',
              fontSize: 12,
            },

          },
          max: 300,  // 最大值
          min: 0, // 最小值
          splitNumber: 5,
          axisTick: { //y轴刻度线
            show: false
          },
          axisLine: { //y轴
            show: false
          },
        },
        series: [{
          type: 'bar',
         data: [ 20, 50 ,60 ,90 ],  //  这变是柱状态的数值显示 同X轴
          barWidth: 24,  //柱形宽度
          label: {
            normal: {  // 显示数值
              show: true,
              position: 'top',
            }
          }
        }]
      })
    }, 150);
  },

在这里插入图片描述
这就是最终完成的效果图啦 第一次写有什么不好的请各位大佬多多指教

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值