微信小程序使用echarts组件实现饼状统计图功能

微信小程序使用echarts组件实现饼状统计图功能

使用echarts实现在微信小程序中统计图的功能,具体的实现步骤思路可进我主页查看我的另一篇博文https://blog.csdn.net/weixin_45465881/article/details/138171153进行查看,本篇文章主要使用echarts组件实现饼状统计图功能,用性别作此示例,具体的实现结果截图如下:

echarts组件代码较多,components文件夹的内容可在我主页的资源免费下载或者可前往echarts官网下载呦,引入的路径一定要正确。具体关于pages文件夹的代码如下:

1、wxml代码:

html 复制代码
<view class="charts-box">
  <view class="charts-title">
    <view class="charts-pot"></view>
    <view>{{title}}</view>
  </view>
  <view style="height: 500rpx;">
    <ec-canvas canvas-id="mychart-bar" ec="{{sex}}"></ec-canvas>
  </view>
</view>

2、wxss代码:

css 复制代码
page {
  background-color: #f1f1f1;
}

.charts-box {
  background-color: white;
  margin: 20rpx;
  border-radius: 15rpx;
  padding: 20rpx;
}

.charts-title {
  display: flex;
  flex-direction: row;
  font-size: 24rpx;
  align-items: center;
  justify-content: flex-start;
  color: rgb(173, 173, 173);
  margin-top: 10rpx;
}

.charts-pot {
  width: 46rpx;
  height: 24rpx;
  background-color: #fcadb0;
  margin-right: 10rpx;
  border-radius: 10rpx;
  margin-top: 2rpx;
}

3、js代码:

javascript 复制代码
import * as echarts from '../../components/ec-canvas/echarts.min';
let chart = null;

Page({

  /**
   * 页面的初始数据
   */
  data: {
    title: 'CSDN粉丝性别占比',
    sex: {
      onInit: initChart
    }
  },
})

function initChart(canvas, width, height, dpr) {
  chart = echarts.init(canvas, null, {
    width: width,
    height: height,
    devicePixelRatio: dpr // new
  });
  canvas.setChart(chart);
  let attr = [
    {'value':175,'name':'男性'},
    {'value':120,'name':'女性'},
    {'value':36,'name':'未知'}
  ]
  let option = {
    tooltip: {
      trigger: 'item'
    },
    legend: {
      top: '90%',
      left: 'center'
    },
    color: ['#fcbd71', '#fcadb0', '#FF82AB'],
    series: [{
      name: '性别',
      type: 'pie',
      radius: ['52.87%', '36.25%','10.88%'],
      avoidLabelOverlap: false,
      itemStyle: {
        borderRadius: 10,
        borderColor: '#fff',
        borderWidth: 2
      },
      label: {
        show: false,
        position: 'center'
      },
      emphasis: {
        label: {
          show: true,
          fontSize: 16,
        }
      },
      labelLine: {
        show: false
      },
      data: attr
    }]
  };
  chart.setOption(option);
  return chart;
}

4、json代码:

javascript 复制代码
{
  "component": true,
  "navigationBarTitleText": "echarts·饼状统计图",
  "navigationBarBackgroundColor": "#008B8B",
  "usingComponents": {
    "ec-canvas":"../../components/ec-canvas/ec-canvas"
  }
}

我这里简单绘制的饼状统计图,如需要其他的统计图,可自行学习或者进我主页,将分享更多内容呦~

小编创作不易,口干舌燥,可以的话,请我喝杯水吧!欢迎各位的批评指导呦~

相关推荐
kyriewen6 小时前
微软用Go重写TypeScript编译器,速度提升10倍,网友:这是“背叛”还是“救赎”?
前端·typescript·ecmascript 6
Ceelog6 小时前
久坐党自救指南:屏幕前 8 小时,身体到底在经历什么
前端·后端
西陵6 小时前
Agent 为什么会陷入 Doom Loop?OpenClaw 的破解之道
前端·人工智能·ai编程
肖有米XTKF86466 小时前
肖有米团队开发:青蓝山泉送水模式系统
小程序·团队开发·零售·csdn开发云
Hyyy7 小时前
普通前端续命周报——第2周
前端
swipe7 小时前
DeepAgents 实战:用多 Agent 架构搭一个深度调研助手
javascript·面试·llm
wuxinyan1237 小时前
工业级大模型学习之路030:Streamlit 企业级智能体前端工作台
前端·学习·streamlit·智能体
修己xj7 小时前
告别无效刷屏!TrendRadar:最快30秒部署的开源热点助手,让你只看真正关心的新闻
前端
anOnion8 小时前
构建无障碍组件之Slider Pattern
前端·html·交互设计
云水一下8 小时前
JavaScript 从零基础到精通系列:前世今生与编程启蒙
前端·javascript