Tableau可视化之多变饼图

简介: 导读:前几篇文章分别对应用Tableau制作折线图、条形图、可视化地图进行了介绍,本文介绍另一大可视化图表利器——饼图。尤其是最后给出了玫瑰图制作方法。

导读:前几篇文章分别对应用Tableau制作折线图、条形图、可视化地图进行了介绍,本文介绍另一大可视化图表利器——饼图。尤其是最后给出了玫瑰图制作方法640.jpg


01 基本饼图

饼图常用于表达多个子类的占比,通过观察饼图扇形角度的大小,可快速对比各子类间的相对关系。在Tableau中,制作饼图比较方便,仅需依次将类别和相应度量信息拖动到标记区的颜色和大小即可。


仍然以Tableau自带的超市数据集为例,制作各地区销售额占比的饼图为:


640.png


基本饼图功能相对单一,能表达的信息也比较有限。


02 环形图

饼图的一个基本变形是环形图,是在饼图的基础上将中间镂空,以实现更为美观的效果。应用Tableau是无法直接制作环形图的,需要稍微做一点变形,其基本思路是制作两个双轴饼图并同轴显示,设置两个饼图不同的大小,然后将其中较小的饼图设置为白色,即实现了大图镂空的效果。


描述起来比较复杂,直接做个动图:


  • 制作双饼图,其中一个以地区作为颜色区分,另一个默认


640.gif


  • 调整两饼图大小,实现大小区分,而后设置同轴,调整小饼图颜色为白色


640.gif


  • 在外环饼图中,依据销售额区分大小,并设置标签信息


640.gif


以上就完成了一个相对基本饼图而言更为漂亮的环形图制作。


03 玫瑰图

玫瑰图也叫南丁格尔玫瑰图,是由英国护士南丁格尔最早发明的可视化图形。与基本饼图的最大区别在于,玫瑰图用扇形的半径大小区分各子类间大小关系,同时保持各子类扇形弧度一致,而后者则是用扇形角度大小来区分。


640.jpg

近期央视新闻发出疫情新闻玫瑰图


抛除所表达的疫情形势向上向好主题不说,这个图本身所带来的可视化效果也堪称颇具视觉冲击力。那么如何用Tableau制作一个玫瑰图呢?


客观上讲,Tableau制作玫瑰相对较为复杂,需要较多的计算公式和变换。网上有很多教程,但对于Tableau初学者来说其实是比较复杂的。


本文给出一种非常简单和直观的做法,先看下效果:


640.png


虽然扇形个数较少时比较难看,但也值得探究一下制作思路:构造辅助数据表,其中每个数据表用首尾封闭的点构成一个扇形,而后借助Tableau的形状,实现绘制各个分类的扇形区域。


具体步骤为:

  • 了解目标数据。通过Tableau查询"超市"数据集中六大地区及销售量数据


640.png

  • 构建辅助数据集。要绘制的玫瑰图是一个六瓣的图形,所以各瓣角度为60度,构建辅助数据表如下:

640.png


其中各列含义分别为:

  • 地区,用以区分玫瑰图中各瓣颜色
  • 销量,用于玫瑰图中各瓣的半径大小
  • 角度,6个子类均分整个圆周,每个子类对应弧度为60度,且在首尾各增加一个半径为0的点,用于首尾衔接。例如,华东地区的角度信息涵盖60度,则其所有数据点共需63个:扇形外围61个点,即半径=销量、角度0-60°;首尾各一个辅助点共2个,半径为0,角度为首尾对应角度,即0°和60°。其他地区类似
  • 顺序,用于在Tableau中指定连接顺序


  • Tableau中加载辅助数据表,并构建X、Y字段,其公式分别为:

640.png

640.png

  • 将X、Y分别拖入行和列坐标,在标记区选择多边形,将地区拖入"颜色",并将"顺序"拖入路径


640.png


  • 由于在Tableau多边形中,无法设置大小和标签信息,在生成的图表中手动增加区域注释,标注相应信息

以上,就能得到一副简单的玫瑰图了。


重复上述流程,我们尝试还原一下央视新闻发布的疫情玫瑰图:


640.png


注:添加标签后字太小,所以仅显示了地区图例。


04 旭日图

前面的几个饼图都是用于展示一级分类信息,倘若想继续下钻实现更细的子类划分,那么就应该考虑应用旭日图(当然,玫瑰图也可以进行多级子类展示)


按照制作玫瑰图的思路,也可制作旭日图,但总归还是比较复杂的,这里仅给出一个应用Excel制作的旭日图例。Tableau制作旭日图的方法留待后续。


640.png


05 总结

本文对应用Tableau制作饼图进行介绍,包括:

  • Tableau制作基本饼图
  • 双轴饼图实现环形图
  • 增加辅助数据,实现制作简单玫瑰图
  • 介绍了旭日图




目录
相关文章
|
Linux
centos7 升级qemu-kvm版本
centos7 手动升级qemu-kvm版本
2986 0
|
人工智能 监控 数据可视化
Agent TARS:一键让AI托管电脑!字节开源PC端多模态AI助手,无缝集成浏览器与系统操作
Agent TARS 是一款开源的多模态AI助手,能够通过视觉解析网页并无缝集成命令行和文件系统,帮助用户高效完成复杂任务。
5100 13
Agent TARS:一键让AI托管电脑!字节开源PC端多模态AI助手,无缝集成浏览器与系统操作
|
机器学习/深度学习 人工智能 并行计算
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
DeepSpeed Chat 是一款革命性的平台,专为简化和加速类ChatGPT模型的训练而设计。通过一键式脚本,用户可以轻松完成从预训练模型到生成自定义ChatGPT模型的全过程。该系统复刻了InstructGPT的RLHF训练方法,并集成了一系列优化技术,如DeepSpeed Hybrid Engine,大幅提升了训练效率和经济性。使用DeepSpeed Chat,即使是拥有数千亿参数的大模型,也能在短时间内完成训练,且成本显著降低。无论是单GPU还是多GPU集群环境,DeepSpeed Chat都能提供卓越的性能和易用性,让RLHF训练变得更加普及。
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
|
运维 Kubernetes Java
Higress 开源一周年:新版本,新标准,新工具,新征程
Higress 开源一周年:新版本,新标准,新工具,新征程
1035 123
|
存储 分布式计算 数据可视化
实时数仓 Hologres产品使用合集之报错:ORCA failed to produce a plan : PlStmt Translation: Group by key is type of imprecise not supported如何解决
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
1380 0
|
JSON 数据安全/隐私保护 数据格式
Nest.js 实战 (八):基于 JWT 的路由身份认证鉴权
这篇文章介绍了身份验证的重要性和多种处理策略,重点放在了JWT(JSON Web Token)认证在Nest.js框架中的应用。文章包含了JWT认证的流程,如何在Nest.js中实现,以及如何创建JWT认证策略。包括了安装依赖,创建处理认证流程的文件,以及如何使用HttpException过滤器来处理未登录访问。
736 0
Nest.js 实战 (八):基于 JWT 的路由身份认证鉴权
|
JSON 小程序 JavaScript
微信小程序页面事件,下拉刷新事件和上拉触底事件
这篇文章介绍了微信小程序中如何实现下拉刷新和上拉触底事件,包括开启下拉刷新、配置下拉刷新样式、监听下拉刷新事件,以及监听上拉触底事件和配置上拉触底的距离。
|
Android开发
全网首发:安卓GLSurfaceView绘制显示YUV(NV21)
全网首发:安卓GLSurfaceView绘制显示YUV(NV21)
922 0
|
人工智能 语音技术 Windows
语音识别教程:Whisper
本文是一份详细的Whisper语音识别模型使用教程,包括了FFmpeg的安装、Whisper模型的安装与使用,以及如何实现实时录制音频并转录的步骤和代码示例,旨在帮助用户基于Whisper和GPT创建AI字幕。
|
开发者 C# UED
如何轻松将WinUI控件引入Web应用?Uno Platform实战攻略——从环境搭建到性能优化,一探究竟!
【8月更文挑战第31天】Uno Platform 通过支持 WebAssembly,将 WinUI 控件无缝带入 Web,为多平台开发提供了新途径。本文介绍如何在 Web 中使用 WinUI 控件,包括环境搭建、控件使用、性能优化、样式调整及测试调优,助力开发者打造高质量跨平台应用。
389 0