数据可视化-使用EXCEL和PS制作一个复杂饼图
一个朋友让我帮忙用饼图去展现一下一堆数据,我说行,后来他给我后,我看到是一堆貌似从什么仪器中导出的一堆使用分隔符分开的文本文档,使用excel打开后如下(为了保护隐私忽略了用字母和数字代替原来的内容:
| 大类 | 小类 | 数量 |
| A | A1 | 396 |
| A | A2 | 89 |
| A | A3 | 3557 |
| A | A4 | 214 |
| A | A5 | 205 |
| A | A6 | 3980 |
| A | A7 | 6738 |
| A | A8 | 6 |
| A | A9 | 3826 |
| A | A10 | 5 |
| A | A11 | 3959 |
| A | A12 | 12152 |
| B | B1 | 43 |
| B | B2 | 686 |
| B | B3 | 16340 |
| B | B4 | 128 |
| B | B5 | 76 |
| B | B6 | 1224 |
| B | B7 | 2256 |
| B | B8 | 14848 |
| B | B9 | 457 |
| B | B10 | 308 |
| B | B11 | 4 |
| B | B12 | 216 |
| B | B13 | 3 |
| B | B14 | 14 |
| B | B15 | 322 |
| C | C1 | 64 |
| C | C2 | 1 |
| C | C3 | 145 |
| C | C4 | 16741 |
| C | C5 | 15864 |
| C | C6 | 606 |
| C | C7 | 40 |
| C | C8 | 22 |
| C | C9 | 512 |
| C | C10 | 1439 |
| C | C11 | 263 |
| C | C12 | 24 |
| C | C13 | 12848 |
| C | C14 | 20 |
| C | C15 | 22 |
| C | C16 | 3346 |
| C | C17 | 4618 |
| C | C18 | 376 |
| C | C19 | 3944 |
| C | C20 | 2450 |
看着这么一大堆数据,该如何处理呢?
大体思路,拿到这堆数据后,先对数据结构进行分析:大类有三类,而每个大类里又有若干小类,这样的话,我们可以把每个大类当做一个整体去做一个饼图,然后 把三个大类的饼图嵌套在一起,使用宽度标示大类的分布。
先拿出A类:
| A1 | 396 |
| A2 | 89 |
| A3 | 3557 |
| A4 | 214 |
| A5 | 205 |
| A6 | 3980 |
| A7 | 6738 |
| A8 | 6 |
| A9 | 3826 |
| A10 | 5 |
| A11 | 3959 |
| A12 | 12152 |
对这些数据绘制一张饼图如下:

然后你会发现问题:A1\A2\A4\A5所占的比例不多,但是在图里要表现出来会破坏整个图的结构,显得极不协调,那我们就要在制作饼图前做一件事:数据有效性处理:把所占数量小于%8以下的小类统一命名为其他,数理后的数据如下:
| A3 | 3557 |
| A6 | 3980 |
| A7 | 6738 |
| A9 | 3826 |
| A11 | 3959 |
| A12 | 12152 |
| other | 915 |
绘制的图形如下:

由于最后是要三个图形放在一起,也就是达到如下效果:

这样的话我们需要把右面的红黄蓝色条留出来用来表示三个大类各占的比例:
对A类数据添加一个分类,让它占用10%的饼图(具体算法很简单,哈哈):处理后的数据如下:
| aa | 3909 |
| A3 | 3557 |
| A6 | 3980 |
| A7 | 6738 |
| A9 | 3826 |
| A11 | 3959 |
| A12 | 12152 |
| other | 915 |
添加了aa一列(要添加在首行)方便以后调整饼图方向:
然后更新饼图,打开设置数据系列格式的对话框,把饼图的方向转到90度,然后就好了:

最后A类的就是这样的,同样的方法去处理B类和C类,但是要注意一点,B类和C类应该使用圆环图,而且一个比一个大。
这三个图都做好了之后,要使用一个软件把他们合并在一起,我选择的是ps
合并完后就是这样的:
其中右侧的红绿蓝三个色条的宽度刚好等于三个圆环的厚度,也等于ABC三类的大类比例(这个比例我们要在Ps中调整的)
但是通过这样制作的这个图,其实有一个问题,有没有人看出来问题在哪儿?
数据可视化-使用EXCEL和PS制作一个复杂饼图的更多相关文章
- Python数据可视化之Excel气泡图
最终实现的效果如图: 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的知识.那么针对这三类 ...
- Excel数据可视化图表设计需要注意的几个问题
大数据发展迅速的时代,数据分析驱动商业决策.对于庞大.无序.复杂的数据要是没经过合适的处理,价值就无法体现. 可以想象一本没有图片的教科书.没有图表.图形或是带有箭头和标签的插图或流程图,那么这门学 ...
- 超级干货 :一文读懂数据可视化 ZT
前言 数据可视化,是指将相对晦涩的的数据通过可视的.交互的方式进行展示,从而形象.直观地表达数据蕴含的信息和规律. 早期的数据可视化作为咨询机构.金融企业的专业工具,其应用领域较为单一,应用形态较为保 ...
- 数据可视化之Matplotlib的使用
1.什么是数据可视化 数据可视化在量化分析当中是一个非常关键的辅助工具,往往我们需要通过可视化技术,对我们的数据进行更清晰的展示,这样也能帮助我们理解交易.理解数据.通过数据的可视化也可以更快速的发现 ...
- vue3 数据可视化项目
可视化面板介绍 应对现在数据可视化的趋势,越来越多企业需要在很多场景(营销数据,生产数据,用户数据)下使用,可视化图表来展示体现数据,让数据更加直观,数据特点更加突出. 01-使用技术 完成该项目 ...
- Python数据可视化库-Matplotlib(一)
今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库 通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 废 ...
- 第二篇:Power BI数据可视化之基于Web数据的报表制作(经典级示例)
前言 报表制作流程的第一步显然是从各个数据源导入数据,Power BI能从很多种数据源导入数据:如Excel,CSV,XML,以及各类数据库(SQL Server,Oracle,My SQL等),两大 ...
- 2021年都要过去啦,你还在用Excel做数据可视化效果吗?
2021年都要过去啦,你还在用Excel做数据可视化效果吗?古语有云,"工欲善其事,必先利其器",没有专业的工具,前期准备的再好也是白搭.现在运用数据可视化工具于经营活动中的企业是 ...
- 利用R语言制作出漂亮的交互数据可视化
利用R语言制作出漂亮的交互数据可视化 利用R语言也可以制作出漂亮的交互数据可视化,下面和大家分享一些常用的交互可视化的R包. rCharts包 说起R语言的交互包,第一个想到的应该就是rCharts包 ...
随机推荐
- UVALive 7291 Kinfolk(最近公共祖先)
题目中的描述就很最近公共祖先,再说其实这个题并不难,就是麻烦点(代码其实可以化简的),我写的判定比较多. 方法:求出两者的最近公共祖先lca,在求出两者到lca的距离 分析:给出a和b,如果LCA(a ...
- HDU 4738 Caocao's Bridges(割边)
乍一看一个模板题,仔细一看还是模板题,但是三个坑.1,不是连通图,放0个.2 守卫为0,放1个. 3注意重边. #include<iostream> #include<cstdio& ...
- Chapter 1 First Sight——15
The red-haired woman looked up. "Can I help you?" 红头发的女人抬头看了一眼说,有什么我能帮助你的吗? "I'm Isab ...
- MySQL 5.7 for Windows 解压缩版配置安装
从MYSQL5.7.6开始,安装MYSQL提示“请键入 NET HELPMSG 3534 以获得更多的帮助”的解决办法 今天安装MySQL提示如下错误: ----------------------- ...
- CentOS 6.5搭建Samba服务器
目标需求:在Windows7下访问CentOS 6.5 root用户桌面/ZS文件夹 0.准备工作 关闭防火墙并开启不起动 service iptables stop chkconfig iptabl ...
- 标签(改变样式style)
id可以换为class,class对应的名字可以多个一样 <div class="box">box1</div> <div class="b ...
- A标签中通过href和onclick传递的this对象
在blog的后台管理中允许为一个分类添加一个地址,但是不好添加onclick事件.想传递当前对象给一个函数,于是就将这个URL写成"Javascript:shoControlSidebar( ...
- pcap filter
今天用tshark抓包,本以为wireshark能用的filter,如“mysql”它也应该能用,其实不然:tshark -f只认识pcap filter,用-R的话,说要用-2,加上-2的话又说什么 ...
- iOS开发UI篇—ios应用数据存储方式(归档) :转发
本文转发至:文顶顶http://www.cnblogs.com/wendingding/p/3775293.html iOS开发UI篇—ios应用数据存储方式(归档) 一.简单说明 在使用plist ...
- 关于NOMINMAX这个预处理宏
标准库在<algorithm>头中定义了两个模板函数std::min() 和 std::max().通常用它可以计算某个值对的最小值和最大值.可惜在 Visual C++ 无法使用它们,因 ...