钉钉小程序使用F2绘制饼图

钉钉小程序使用F2绘制饼图

npm下载F2图表:

npm install @antv/my-f2

.axml:

<view id="container1" class="f2-chart">
  <f-canvas onInit="onInitChart"></f-canvas> 
</view>

.json:

{
  "usingComponents": {
    "f-canvas": "@antv/my-f2"
    }
}

.js

import F2 from '@antv/f2';
const PieLabel = require('@antv/f2/lib/plugin/pie-label');
F2.Chart.plugins.register([PieLabel]);
Page({
  data: {},
  onLoad() {},
  onInitChart(F2, config) {
    // 设置图表内边距
    config.padding = [60,50,0,50]; 
    // 创建图表
    const chart=new F2.Chart(config);
    // 初始化数据
    const data=[
      {
        name: '长津湖',
        percent: 0.32,
        a: '1',
      },
      {
        name: '我和我的父辈',
        percent: 0.16,
        a: '1',
      },
      {
        name: '失控玩家',
        percent: 0.08,
        a: '1',
      },
      {
        name: '宝可梦',
        percent: 0.04,
        a: '1',
      },
      {
        name: '峰爆',
        percent: 0.02,
        a: '1',
      },
      {
        name: '其他',
        percent: 0.01,
        a: '1',
      },
      {
        name: '未知',
        percent: 0.005,
        a: '1',
      },
    ];
    // 数据绑定
    chart.source(data);
    chart.coord({
      // type的属性:饼图:polar,柱形:rect
      // type: 'rect',
      type:'polar',
      // transposed:转置,可设为true或false
      transposed:true
    });
    // 配置图形形状interval:柱形或弧形,一般构成柱状图、饼图等图表
    // position:配置坐标轴
    // color配置颜色,也可使用如color('字段名',['颜色','颜色',...])的方式自己定义
    chart.interval().position('a*percent').color('name').adjust('stack');
    // axis配置坐标轴,这里false表示不渲染
    chart.axis(false);
    // 对饼图的标签进行设置,sidePadding表示文本距离画布左右两边的距离
    // label1和label2分别对应图中的上下文字,可在return中进行样式的设置
    chart.pieLabel({
      sidePadding:10,
      label1:(data, color) => {
        return {
          text: data.name,
          fill: color,
        };
      },
      label2:(data) => {
        return {
          fill: '#000000',
          text:data.percent,
          fontWeight: 500,
          fontSize: 10,
        };
      }
    });
    // 配置tooltip
    chart.tooltip(false);
    // legend配置图例,设为false为不显示
    // position表示显示的位置,包括top bottom left right,不设置默认显示在顶部
    // chart.legend({ 
    //   position: 'bottom',
    // });
    chart.legend(false);
    chart.render();
    return chart;
  }
});

效果图:

在这里插入图片描述

参考资料:
F2 API 文档
F2 移动端可视化引擎

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Taro 钉钉小程序是一种基于 Taro 框架开发的小程序应用,它提供了丰富的开发工具和组件库,帮助开发者更高效地构建小程序应用。其中,饼图是 Taro 钉钉小程序中常用的一种数据可视化图表饼图通常用于展示数据的比例关系,并帮助用户更直观地理解数据的分布情况。在 Taro 钉钉小程序使用饼图可以通过引入相应的组件库来实现。开发者可以使用这些组件库提供的饼图组件,传入相应的数据和样式参数,即可在小程序中呈现出漂亮的饼图。 Taro 钉钉小程序饼图组件通常具备一些常见的功能和特性,比如支持设置饼图的大小、颜色、标签等。开发者可以根据实际需求,调整这些参数以得到适合自己应用场景的饼图。 获取数据通常是开发饼图的重要一步。在 Taro 钉钉小程序中,可以通过调用接口或者请求后台接口来获取数据,并将数据传入饼图组件进行展示。数据可以是一个数组,每个元素代表一个数据项,包括数据的值和对应的标签。 饼图常用于展示数据的占比和比例关系,因此对于大数据量的饼图,可以使用数据筛选和排序等方式来优化展示效果。此外,还可以添加动画效果来提升用户体验,让饼图更具吸引力。 总的来说,Taro 钉钉小程序饼图是一种在小程序中常用的数据可视化图表,通过引入相应的组件库,开发者可以方便地创建自定义的饼图,并展示数据的比例关系,从而让用户更好地理解和分析数据。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值