官网文档:https://echarts.apache.org/zh/option.html#series-pie.type

使用案例指导:https://echarts.apache.org/zh/tutorial.html#%E4%B8%AA%E6%80%A7%E5%8C%96%E5%9B%BE%E8%A1%A8%E7%9A%84%E6%A0%B7%E5%BC%8F

我的环形图表效果图:

配置:

 1   //常用颜色列表
2 colors: string[] = ['#FF767C', '#FFA262', '#9FE11F', '#3ED389', '#71C8FF', '#9EA2FF'];
3 //获取数据及渲染样式
4 getOption = () => {
5 let assembledDatas = this.getAssembledDataList();
6 let option = {
7 //数据加载时间为0,规避初始化时加载动画偏移的问题
8 animationDurationUpdate: 0,
9 title: {
10 text: this.props.commentCount,
11 textStyle: {
12 color: '#333333',
13 fontFamily: 'Microsoft YaHei',
14 fontSize: 24,
15 lineHeight: 26,
16 fontWeight: 'normal',
17 },
18 x: 'center',
19 y: 'center',
20 },
21 //hover提示
22 tooltip: {
23 formatter: '{b}({d}%)',
24 },
25 //标签文本
26 label: {
27 color: '#666666',
28 fontFamily: 'Microsoft YaHei',
29 fontSize: 14,
30 lineHeight: 16,
31 formatter: '{b} {c}',
32 },
33 //标签线条
34 labelLine: {
35 lineStyle: {
36 color: '#666666',
37 },
38 },
39 //定义全局颜色盘
40 color: this.colors,
41 series: [
42 {
43 name: '系列名',
44 type: 'pie',
45 center: ['50%', '50%'], // 饼图的圆心坐标
46 radius: ['24%', '34%'], //内外圆圈
47 data: assembledDatas,
48 hoverOffset: 4,
49 },
50 ],
51 };
52 return option;
53 }

数据:

 1   //获取标签数据列表(如果需要在指定data项中添加定制样式,可以往这里加)
2 getAssembledDataList() {
3 let datas: any[] = [];
4 const sourceDatas = this.props.datas;
5 if (sourceDatas) {
6 for (let index = 0; index < sourceDatas.length; index++) {
7 const dataItem = sourceDatas[index];
8 datas.push({
9 value: dataItem.cupCount,
10 name: dataItem.typeName,
11 });
12 }
13 }
14 return datas;
15 }

添加图表:

1   render() {
2 return (
3 <div className="pieChart">
4 <ReactEcharts option={this.getOption()} />
5 </div>
6 );
7 }

一些引用:

1 import React, { Component } from 'react';
2 //导入饼图
3 import 'echarts/lib/chart/pie';
4 import 'echarts/lib/component/tooltip';
5 import 'echarts/lib/component/title';
6 import 'echarts/lib/component/legend';
7 import 'echarts/lib/component/markPoint';
8 import ReactEcharts from 'echarts-for-react';

遇到的几个问题:

1. 数据初始加载时,有一个更新动画,但是是从显示区域的左侧弹出来的。

原因:默认是从左侧出来的。暂时未找到直接设置初始动画位置的属性。如果直接关闭Animation=false,Hover动画也会被禁用(即使设置hoverAnimation也加不回来)

规避:设置数据加载耗时为0,即数据加载时,不设置动画。

2. 图表有个最小高宽,如果小于这个最小高亮,图表会加载不出来。

原因:他们的设计如此,说是需要一个加载的空间。
规避:可以等数据加载完成后,resize图表。或者调整图表的margin,隐藏冗余的空白部分。

ECharts 环形饼图配置的更多相关文章

  1. ECharts 环形饼图 动态获取json数据

    ECharts  环形饼图 动态获取json数据 效果图如下: 一.html部分 <div id="secondPieChart" style="width:100 ...

  2. echarts配置环形饼图的参数,以及牵引线显示百分比,中间数据

    最近项目有多处是用echarts的,有环形图,折线图,饼图,总结了一下. 本次主要讲环形图,折线图在下期. 这个是最终的效果图.下面附上代码 //三种占比 var myChartType = echa ...

  3. echarts标准饼图(一)——基本配置demo

    echarts标准饼图解读共分为四部分, 一.基本配置demo 二.标题(title)配置 三.提示框(tooltip)配置 四.图例(legend)配置 五.系列列表(series )配置 下面是一 ...

  4. Echarts环形进度使用 【1 简单的使用示例】

    使用中说明几点属性:  hoverAnimation:false,//此处查了好久属性//控制鼠标放置在环上时候的交互//这里一个简单的示例使用Echarts 环形图使用方式//常用于统计完成进度等等 ...

  5. echarts中饼图显示百分比

    通过echarts制作饼图,需要通过鼠标移动到对应的扇形才能才看数值和百分比. 解决这个问题参考的是将鼠标移动到扇形上的显示方法:     tooltip : {         trigger: ' ...

  6. 修改echarts环形图的牵引线及文字位置

    修改echarts环形图的牵引线及文字位置,下面代码及效果不仅如此,也包含了其它的效果哦.有问题可以留言. 根据echarts官方示例修改效果: 官方示例图: 修改效果图: 直接上代码:其它不多说. ...

  7. echarts legend文字配置多个颜色(转)

    困扰很久的问题终于解决了 oh yea! echarts legend文字配置多个颜色legend: {data: [{name:‘直接访问’,icon : ‘circle’,textStyle: { ...

  8. echarts饼图配置

    js引用和配置div <div id="container" style="height: 100%"></div> <scrip ...

  9. echarts标准饼图解读(一)——提示框(tooltip)配置

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. vscode配置c++环境(超简单)

    vscode配置c++环境(超简单) 超简单!!! 配置c++最麻烦的就是mingw的环境,有很多不同的版本,很杂乱,这里我们用最简单的办法展示. 下载一个devc++. 如果你问我,为什么下了dev ...

  2. 替换yum源

    1.yum源进行备份 进入到yum源的配置文件中 执行命令如下:cd /etc/yum.repos.d 将yum源进行备份:mv Centos-Base.repo Centos-Base.repo.b ...

  3. mysql修改数据库表及字段的编码格式

    1.修改表的编码格式 ALTER TABLE `table` DEFAULT CHARACTER SET utf8; 2.修改字段编码格式 ALTER TABLE `table` CHANGE `字段 ...

  4. 解决Vue打包后背景图片路径错误问题(转)

    1.原因解析 当用vue-cli自动构建项目后,有两种运行方法,分别是: npm run dev : 提供一个开发的环境,自动热更新,资源使用绝对路径,所以可以正常看到背景图片. npm run bu ...

  5. Hive不能载入本地数据:FAILED: SemanticException Line 1:17 Invalid path

    1.问题描述: (1)问题示例: hive (test)> create table t_textfile(c1 string,c2 int,c3 string,c4 string)      ...

  6. winform导出excel报'object' does not contain a definition for 'get_Range'的问题

    现手上有个老项目采用.net framework3.0开发,改成4.0后,excel导出报'object' does not contain a definition for 'get_Range'的 ...

  7. 程序猿、IT男、屌丝

    一个学计算机的,做了金融圈的朋友,对另外做硬件的朋友,如是说: [据说你写的程序代码,必须很浪的计算机才能运行] [ 以后还用写程序吗.不是ChatGPT直接可以出源代码吗?] 程序猿.IT男.屌丝. ...

  8. Python--基本知识认知及应用

    字面量 概念:被写下来的固定的值(既包括print里面的值,也包括直接写到编程页面的值) 在Python中,常用的有六种值的类型:数字.字符串.列表.元组.集合以及字典: Python中,被双引号包围 ...

  9. 消息队列RabbitMQ业务场景应用及解决方案

    目录 0. 博客参考 1. 背景 2. 技术选型 3. 消息队列的几个常见问题 4. 代码功能开发及测试 4.1 生产者 4.2 消费者 5. 源代码 6.补充:消息的顺序性 0. 博客参考 http ...

  10. NET 8 预览版 2 亮点是Blazor

    .NET 团队在2023年3月14日发布了.NET 8预览版2,博客文章地址:https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-pre ...