教你在Tableau中绘制蝌蚪图等带有空心圆的图表

简介: 本文将通过分享多种方法,包括成功的与失败的尝试,来讲解如何在Tableau中创建蝌蚪图等带有空心圆的图表。

Mark的帖子概述了这种图表不同风格的优缺点,但他在推特上询问如何让线停在圆圈的边缘,而不是进入到圆圈的中心。我之前遇到过这种情况并且多年来尝试过各种方法,所以我会分享自己一些的尝试和简单的解决方法,用于在Tableau中使用空白圆绘制蝌蚪图等图表。

蝌蚪图

在我们开始之前,这里有一个Emma Cosh嘲笑过的蝌蚪图(不是用Tableau绘制的)。

image

这不是一个新的图表。事实上,这个图表在Jonathan Drummey为Southern Maine Health Care创建的仪表盘中的第八章,仪表盘大书,中有所介绍。我们在书中为这个图表的名字纠结过。最终我们认为这个图表是由我的合著者Andy Cotgreave发明的棒棒糖图的变体。回顾一下,这个图和连接点图(也叫哑铃图)有相同的作用,但是这个是用单点绘制的。

image

就个人而言,我喜欢Emma为这个由一条线和一个单点组成的图形提出的名称:蝌蚪图。建立一个蝌蚪图是简单直接的:它从哑铃图开始。但是一个单点只能显示当前时段而无法显示前一个时段的信息。在Tableau中,哑铃图很容易构建。它需要两个轴,一个轴作为点,另一个轴作为线来连接点。消除一个点是很简单的:用一个简单的计算来检查时间,如果时间等于当前的时间,则让其对应的值等于你的测量值,否则使对应值等于“NULL”。

关于计算的例子:

计算栏的名字:销售圈
公式:如果【时间】=“今年”
则【销售线】  结束

对于超市的数据,计算可能会如下所示:

计算栏的名字:销售圈
公式:如果 时间栏(“年份”,【下单日期】)=2018 则 【销售】 结束

但是棘手的部分是如何防止线进入到空白圆圈的里面。例如,在Mark的蝌蚪图变体中,它看起来像这样。

image

注意这些线穿过了圆圈并进入到了圆心。那么我们如何在Tableau中创建一个相似的图表,并使得空白圆圈里面保持白色(或者任何背景颜色)呢?

不好用的方法

在我介绍解决方案前,我将分享一些自己不太成功的尝试。

首先,创建自定义图形。通常,我建议将自定义图形保存为PNG文件。那么为什么不创建一个有白色圆心的圆圈在PNG文件里呢?这样做的问题是,当Tableau对保存为具有透明背景的PNG文件中的自定义图形上的颜色编码时,它会改变白色中心的颜色,最后会出现彩色的圆点。那么JPG文件呢?JPG的问题是无法设置透明背景,所以你最后得到的是纯色方块,而不是圆形。此外,即使可以设置透明背景,将创建的不同颜色的自定义图形与背景颜色匹配也会十分麻烦。再有就是自定义图形极低的分辨率会使你无法在PDF 或图像中以高分辨率打印或导出它们。

那么如何更改数据?我们可以通过计算来缩短这些线。但这并不容易,因为缩短的量需要取决于蝌蚪图的走向,所以正数和负数都有可能。此外,对线进行加减的数量取决于圆的大小和线的长短:随着圆圈变大就需要减去更多的线。因此这种方法需要大量计算,并且难以做到恰到好处。

Adam McCann有个有趣的想法。他建议用“I”在圆圈内部加个标签并使之变白。我想到的一个类似的方法是利用字符作为标签并用白色填充圆圈。但我发现如何将标签准确的放在圆圈中心和找到正确的字体大小仍是难题。

那么我们看看另一种构建此图表的方式。

建立一个基本的蝌蚪图

创建一个基本的蝌蚪图非常简单直接。以下是Mark的工作簿中建立蝌蚪图的步骤:

移动序列到行
移动销售线到列
移动销售圈到列
右键点击销售圈并选择“双轴”
右键点击第二个y轴并选择“同步轴”
选择所有的标记卡,并移动类别到颜色
在销售线标记卡上,从下拉目录中选择“线”
移动时间到路径
右键点击Y轴并选择“显示标题”以删除标题
右键点击顶部的第二个X轴并选择“显示标题”以删除标题

你现在应该有一个与下图类似的蝌蚪图:

image

添加白色中心到填充点。

我发现创建空白圆圈的最好方法就是用另一个圆圈填充白色(或其他背景颜色)的点内部。因此,我们将复制销售圈栏并将其覆盖在当前圆圈的顶部。

右键点击销售圈并选择“复制”,移动测量值到总和(销售圈)之上的列。这一操作会使测量值在列中替代总和(销售圈)。

你现在有四个测量值呈现在测量值卡片上,但我们只需要其中的两个。

image

右键点击总和(销售线)并选择‘移除’或将此栏拖到画面左侧
右键点击总和(记录数量)并选择‘移除’或将此栏拖到画面左侧

在测量值标记卡上:

从标记卡的下拉目录中选择“圆圈”,
移动测量名称到尺寸,
选择细节图标到测量名称的左侧并改变其颜色,或用Control键同时选中类别和测量值,并将它们移动到颜色。

现在你的图例中应该有12种颜色。

双击图例中的任意颜色以打开编辑颜色菜单

将所有销售圈(副本)颜色改为白色(或背景颜色)并根据需要指定其他颜色。

注意 – 你可以使用Control键多选所有这些,然后双击最后一个。这将立即改变所有颜色而不用手动改变每一个的颜色。

在测量值卡上,拖动总和(销售圈(复印件))到列表顶部,也就是总和(销售圈)的前面。 这将颠倒圆圈的大小。或者也可双击图例中的一个尺寸图标,然后选择“反转”。

双击图例中的一个尺寸图标并使总和(销售圈(副本))的小点更大。

你现在应该有一个类似的蝌蚪图表,并且没有线条穿过了圆圈。

image

这些技巧可以用于创建棒棒糖图,哑铃图,或者任何包含了点与线组合的图表。此外,你还可以反转尺寸来将白色圆圈放在外部,以在点与点之间产生间隙。

带有空心圆圈的哑铃图:

image

前一时段用空心圆而当前时段用实心圆表示的哑铃图:

image

用白色圆圈在点与线之间构造间隙的哑铃图:

image

带有空心圆圈的棒棒糖图:

image

带有空心圆圈的折线图:

image

用白色圆圈在点与线之间构造间隙的折线图:

image

下面是我根据Mark的原始工作簿创建的Tableau工作簿,其中包含这些不同的图表变体:

Tableau工作簿的链接:
https://public.tableau.com/views/OpenCircleCharts/HowtoTadpole?:embed=y&:embed_code_version=3&:loadOrderID=0&:display_count=yes

image

image

image

原文发布时间为:2018-07-25
本文作者:Jeffrey A. Shaffer
本文来自云栖社区合作伙伴“数据派THU”,了解相关信息可以关注“数据派THU

相关文章
|
监控 安全 Linux
Linux系统的防御从多个方面来保护系统安全
防火墙:使用防火墙软件如iptables或Firewalld来限制网络流量,保护系统免受恶意网络攻击。
|
网络协议 算法 Ubuntu
BBR一键安装脚本 BBR/魔改/暴力/BBRplus/锐速(Lotsever)
BBR是 Google 提出的一种新型拥塞控制算法,可以使 Linux 服务器显著地提高吞吐量和减少 TCP 连接的延迟
75309 5
BBR一键安装脚本 BBR/魔改/暴力/BBRplus/锐速(Lotsever)
|
4月前
|
人工智能 机器人 网络安全
新手必看!阿里云部署OpenClaw保姆级图文步骤+企业微信接入教程+新手避坑指南
在2026年企业数字化与AI自动化深度融合的浪潮中,OpenClaw(原Clawdbot,曾用名Moltbot)凭借开源特性、灵活的插件生态与强大的任务执行能力,成为企业办公、团队协作与个人效率提升的核心工具。这款开源AI智能体框架,截至2026年3月,在GitHub平台星标数量已突破24万,Fork数超4.5万,支持通过自然语言完成文件管理、信息检索、流程自动化、多端协同等多样化任务。而企业微信作为国内领先的企业级协同办公平台,覆盖超6000万企业组织,具备消息触达、客户联系、客户群管理、客户朋友圈、审批流、微盘存储、机器人集成等核心优势,是企业办公、团队协作、内部沟通与客户服务的首选载体。
1150 1
|
人工智能 小程序 Android开发
鸿蒙应用开发从入门到入行 - 篇1:HarmonyOS介绍——带你深入理解鸿蒙特性
本文介绍了华为的HarmonyOS(鸿蒙系统),这是一个面向全场景的分布式操作系统,不仅适用于手机和平板,还支持电脑、车机、手表、电视等多种设备。文章详细解析了鸿蒙系统的三大特性:一次开发多端部署、可分可合自由流转、统一生态原生智能,并分析了鸿蒙系统为何能蚕食安卓市场份额的原因。猫林老师认为,鸿蒙凭借其先进的技术和国内政策支持,有望在未来的市场中占据重要地位。最后,文章提供了学习鸿蒙系统的建议和一些课后练习,帮助读者更好地理解和掌握这一系统。
2014 7
鸿蒙应用开发从入门到入行 - 篇1:HarmonyOS介绍——带你深入理解鸿蒙特性
|
消息中间件 存储 Cloud Native
云消息队列 Kafka 版 V3 系列荣获信通院“云原生技术创新标杆案例”
2024 年 12 月 24 日,由中国信息通信研究院(以下简称“中国信通院”)主办的“2025 中国信通院深度观察报告会:算力互联网分论坛”,在北京隆重召开。本次论坛以“算力互联网 新质生产力”为主题,全面展示中国信通院在算力互联网产业领域的研究、实践与业界共识,与产业先行者共同探索算力互联网产业未来发展的方向。会议公布了“2024 年度云原生与应用现代化标杆案例”评选结果,“云消息队列 Kafka 版 V3 系列”荣获“云原生技术创新标杆案例”。
583 105
|
9月前
|
存储 前端开发
【实战案例】火语言 RPA 采集小说站已完结书名(自动翻页判断),保存到Excel 全流程(附完整脚本)
自动采集起点中文网完本小说书名,支持翻页检测与数据存储。脚本逐页抓取小说名并保存至Excel,最多采集50页,智能判断翻页逻辑,确保数据完整,适用于批量获取完结书籍信息。
614 5
|
弹性计算 异构计算
阿里云服务器多少钱一小时?在哪查询1小时价格表?
阿里云服务器按量付费模式下,1小时费用因实例规格而异。例如,2核2G的ECS经济型e实例为0.094元/小时,而更高配置的GPU服务器可达211.68元/小时。用户可通过阿里云ECS页面“立即购买”并选择“按量付费”,查看不同配置的实时价格。此外,包年包月模式通常更划算,如轻量应用服务器2核2G仅需99元/年,但不支持按量付费。更多详情可访问阿里云官网查询。
865 71
|
12月前
|
存储 安全 文件存储
删除的文件为什么在回收站里找不到
你是否遇到过这样的情况:删除的文件明明没进回收站,瞬间消失无踪?其实,回收站并非所有文件的“必经之路”。本文揭秘文件未进回收站的四大原因,如使用 Shift+Delete、删除外部设备文件、文件过大超出回收站容量、被清理软件误删等,并提供实用的数据恢复方法与预防建议,助你避免误删风险,快速找回丢失文件。
|
存储 应用服务中间件 云计算
深入解析:云计算中的容器化技术——Docker实战指南
【10月更文挑战第14天】深入解析:云计算中的容器化技术——Docker实战指南
742 1
|
JSON Kubernetes API
使用FastAPI部署Ultralytics YOLOv5模型
YOLO是You Only Look Once(你只看一次)的缩写,它具有识别图像中的物体的非凡能力,在日常应用中会经常被使用。所以在本文中,我们将介绍如何使用FastAPI的集成YOLOv5,这样我们可以将YOLOv5做为API对外提供服务。
958 5