395 Star 3.4K Fork 670

GVPuCharts / uCharts

 / 详情

Taro3项目中使用ucharts作图,编译成微信小程序还是会层级过高。

已完成
缺陷
创建于  
2023-03-10 17:35
import { useEffect, useLayoutEffect, useState } from 'react'
import { View, Text, Canvas } from '@tarojs/components'
import Taro from '@tarojs/taro'
import uCharts from '@qiun/ucharts'


import styles from './index.module.scss'

var uChartsInstance = {}

export function CardReport({ data }) {
  const [type, setType] = useState('')
  useLayoutEffect(() => {
    let res = {
      series: [
        {
          name: '平均申请成功率',
          color: '#1890ff',
          data: Number(data.pass_rate) / 100,
        },
      ],
    }
    // setTimeout(() => {},1000)
    drawCharts('GPzrpCUVQaRhqPiWdfuGPeXkOSjfEDFX', res)
  }, [])
  const drawCharts = (id, data1) => {
    const { cWidth, cHeight, pixelRatio } = {
      cWidth: 150,
      cHeight: 150,
      pixelRatio: 1,
    }
    let ctx = Taro.createCanvasContext(id)
    console.log(ctx)

    uChartsInstance[id] = new uCharts({
      canvas2d: true,
      type: 'arcbar',
      context: ctx,
      width: cWidth,
      height: cHeight,
      series: data1.series,
      pixelRatio: pixelRatio,
      animation: true,
      background: '#FFFFFF',
      color: [
        '#1890FF',
        '#91CB74',
        '#FAC858',
        '#EE6666',
        '#73C0DE',
        '#3CA272',
        '#FC8452',
        '#9A60B4',
        '#ea7ccc',
      ],
      padding: undefined,
      title: {
        name: `${data.pass_rate}%`,
        fontSize: 26,
        color: '#1890ff',
      },
      subtitle: {
        name: '平均申请成功率',
        fontSize: 12,
        color: '#9A9FA3',
      },
      extra: {
        arcbar: {
          type: 'circle',
          width: 12,
          backgroundColor: '#E9E9E9',
          startAngle: 1.5,
          endAngle: 0.25,
          gap: 2,
        },
      },
    })
  
  }
  return (
    <>
      <View
        onClick={() => {
         
        }}
        hoverClass='hover'
        className={styles.report_card}
      >
   
        <View className='row'>
          <View className={styles.left}>
      
            <Canvas
              // {...canvasProps}
              canvasId='GPzrpCUVQaRhqPiWdfuGPeXkOSjfEDFX'
              id='GPzrpCUVQaRhqPiWdfuGPeXkOSjfEDFX'
              className={styles.charts}
              // type='2d'
              // type={type}
              // type='webgl'
            />
          </View>
          <View className={styles.right}>
            <View className={styles.info + ' ' + styles.success}>
              <View className='row  flex-start'>
                <Text className={styles.num}>{data.pass_count} </Text>例
              </View>
              <View>申请成功</View>
            </View>

            <View className={styles.info + ' ' + styles.fail}>
              <View className='row flex-start'>
                <Text className={styles.num}>{data.fail_count} </Text>例
              </View>

            </View>
          </View>
        </View>
      </View>
     
    </>
  )
}

输入图片说明

用一下方法开启type='2d',以后,直接渲染不出环状图了

 <Canvas
              // {...canvasProps}
              canvasId='GPzrpCUVQaRhqPiWdfuGPeXkOSjfEDFX'
              id='GPzrpCUVQaRhqPiWdfuGPeXkOSjfEDFX'
              className={styles.charts}
             type='2d'
              // type={type}
              // type='webgl'
            />

评论 (1)

布鲁斯韦恩 创建了缺陷
布鲁斯韦恩 修改了描述
布鲁斯韦恩 修改了描述
展开全部操作日志

需要type='2d'的canvas2d模式

16cheng 任务状态待办的 修改为已完成
布鲁斯韦恩 修改了描述

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(2)
1316944 cc qiun 1578948788
JavaScript
1
https://gitee.com/uCharts/uCharts.git
git@gitee.com:uCharts/uCharts.git
uCharts
uCharts
uCharts

搜索帮助