举个栗子~Tableau 技巧(244):用和弦图(Chord diagram)呈现数据关系
创始人
2024-01-30 19:25:55

关于和弦图

和弦图(Chord diagram)常用来表示数据之间的相互关系。数据点沿着圆圈分布,通过点和点之间相互连接的弧线来呈现相互之间的关系。和弦图从视觉上来说比较美观,数据呈现又很直观,所以深受数据粉喜爱。

之前,我们分享过 🌰:轻松搞定 关系网 图表,如果数据粉希望换一种方式呈现数据关系,可以考虑和弦图哦~
关系和弦图的实现方法会相对复杂一些,因此我们用一份容易理解的电影角色关系数据(如下示例),来分享它的实现方法!
图片

图片

本期的栗子,一睹为快吧!

本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:用和弦图(Chord diagram)呈现数据关系。

为方便学习,栗子使用自拟的“人物关系和弦图”数据源。掌握栗子方法后,数据粉可尝试使用自己的数据源。懒癌患者可通过以下链接获取栗子数据源:

https://www.dkmeco.com/cms/course/detail/645

D-栗子数据源

图片

▲ sheet 1

  • 角色 ID:用于识别角色的唯一 ID,同一人物 角色 ID 和关系人 ID 相同;

  • 关系人 ID:用于识别关系人的唯一 ID,同一人物 角色 ID 和关系人 ID 相同;

  • 主要关系类型:对角色和关系人的关系的离散分类;

  • 关系描述:对角色和关系人的关系的文字描述,缺失此字段不影响图形展示;

  • 连接:lonely moon 表和 repetition 表内连的字段,相同即可。

图片

sheet 2 ▲

  • R:范围从 0.01~1 共计 100 个数,以及单独的 2。此字段的目的为了在 Tableau 连接两个表,将 lonely moon 的数据重复 101 遍;

  • 连接:与 lonely moon 的连接相同,都为1,方便“内连接”。

Tips:所有的人物 ID 都需要有一行角色 ID,即使该人物 ID没有对应的关系人 ID,例如:孙光阳;虽然关系是相互的,但是在数据中,若已经有了金刚鼠->孙光阳的关系,即可不必补充孙光阳->金刚鼠的关系。

具体步骤如下:

连接数据源
打开 Tableau Desktop,连接栗子数据源,将两个表 “lonely moon” 和 “Repetition” 通过内联接在一起。
图片

图片

图片

创建参数

新建工作表,单击“数据”窗格右上角 ▼ 符号,在下拉菜单中选择:创建参数。
➤ 创建参数:distance,用于调整人物图和关系线之间的距离,如图设置。
图片

➤ 创建参数:突出角色,用于点击关系线时,突出显示线两端的头像使用,参数内需包含所有的角色,以及手动在“值列表”添加一个“全部”,如图设置。
图片

➤ 创建参数:突出关系人,用于点击关系线时,突出显示线两端的头像使用,参数内需包含所有的关系人,以及手动在“值列表”添加一个“全部”,如图设置。
图片

创建计算字段

新建工作表,单击“数据”窗格右上角 ▼ 符号,在下拉菜单中选择:创建计算字段。需要创建 14 个计算字段。
➤ 计算字段:各角色最小关系id,键入函数:

{ FIXED [角色id]:MIN([关系人id])},该字段用于限制只出现一个头像点 。

图片

➤ 计算字段:总人数,键入函数:

{fixed:COUNTD([角色id])},该字段用于三角函数使用。

图片

➤ 计算字段:标签,键入函数:
IF [R] = 2 then [角色] END,该字段用于显示头像的名称。
图片

➤ 计算字段:突出点,键入函数:
if ([突出关系人]=[角色] or [突出角色]=[角色]) and [R]=2
and [关系人id]=[各角色最小关系id] then ‘可突出’
ELSEIF [突出角色]=[角色] and [R]!=2 and [突出关系人]=[关系人] then ‘可突出’
else ‘不可突出’ end
该字段用于点击关系线时,确定哪些点应该突出显示。
图片

➤ 计算字段:关系人.x,键入函数:
COS([关系人id]/[总人数] * PI() * 2) //范围cos(2Π/n ~2Π) [-1,1)
图片

➤ 计算字段:关系人.y,键入函数:
sin([关系人id]/[总人数] * PI() * 2) //范围sin(2Π/n ~2Π) [-1,1)
图片

➤ 计算字段:角色.x,键入函数:
COS([角色id]/[总人数] * PI() * 2) //范围cos(2Π/n ~2Π) [-1,1)
图片

➤ 计算字段:角色.y,键入函数:
sin([角色id]/[总人数] * PI() * 2) //范围sin(2Π/n ~2Π) [-1,1)
图片

➤ 计算字段:余弦.x,键入函数:
COS((ACOS([角色.x])+ACOS([关系人.x]))/2)
图片

➤ 计算字段:正弦.y,键入函数:
SIN((ASIN([关系人.y])+ASIN([角色.y]))/2)
图片

➤ 计算字段:距离,键入函数:
SQRT(([角色.x] - [关系人.x])^2 + ([角色.y] - [关系人.y])^2)
图片

➤ 计算字段:x,键入函数:
IF [R] >= 0 AND [R] <= 1
THEN (( (1 - [R])^2 ) * [角色.x]) + (2 * (1 - [R]) * [R] * ( ((2 - [距离])/ 2) *[余弦.x] )) + ([R]^2 * [关系人.x]) END
注意:创建完成后,右键单击该字段,将其转化为:维度、再转化为:连续。
图片

➤ 计算字段:y,键入函数:
IF [R] >= 0 AND [R] <= 1
THEN (( (1 - [R])^2 ) * [角色.y]) + (2 * (1 - [R]) * [R] * ( ((2 - [距离])/ 2) * [正弦.y] ) ) + ([R]^2 * [关系人.y])
ELSEIF [R] = 2 and [关系人id]=[各角色最小关系id]
THEN [distance] * [角色.y] END
注意:创建完成后,右键单击该字段,将其转化为:维度、再转化为:连续。
图片

➤ 计算字段:x.shape,键入函数:
IF [R] = 2 and [关系人id]=[各角色最小关系id]
THEN [distance] * [角色.x] END
注意:创建完成后,右键单击该字段,将其转化为:维度、再转化为:连续。
图片

为便于数据管理,可将刚刚创建的这些计算字段,根据用途分别放在三个文件夹里。

图片

创建视图

首先,将计算字段“x”和“x.shape”拖放至列,将“y”拖放至行。再对“x”和“x.shape”做双轴和同步轴操作,并移除“全部”“标记”卡上的“度量名称”颜色胶囊。
图片

打开“x”“标记”卡,将其标记类型改为:线,并如下图将各个字段拖放至该“标记”卡中(注意:需要将字段“R”转化为维度、再转化为连续,然后再拖放到“路径”中)。
图片

单击“x”“标记”卡的工具提示,如下图设置:
图片

打开“x.shape”“标记”卡,并如下图将各个字段拖放至该“标记”卡中。
图片

按照 🌰 如何插入自定义形状 方法,将角色头像图片放入电脑中。
图片

单击“x.shape”“标记”卡的形状,为各个角色设置对应的头像。
图片

图片

设置好之后,可以根据需要调整一下大小。
图片

然后,将字段“突出点”拖放至“全部”“标记”卡的详细信息中,如下图。
图片

设置仪表板操作

新建仪表板,将刚刚创建的工作表拖放至右侧视图中。然后,单击顶部菜单栏“仪表板”,下拉菜单选择:操作,需要添加三个操作。
图片

弹窗中,需要以此选择,添加一个突出显示操作、两个参数操作。

图片

➤ 参数:传递需要突出的关系人,如下图设置。
图片

➤ 参数:传递需要突出的角色,如下图设置。
图片

➤ 突出显示动作:突出显示1,如下图设置。
图片

完成后,可以实现单击关系线,突出显示关系线和关系线两端的头像的功能,见下图。
图片

最后,再按需设置文字、线粗细、颜色、格式等等,就实现了我们想要的电影《独行月球》角色关系和弦图了。
图片

本期的 Tableau 技巧,你 Get 到了吗?
下一期,再见~
在这里插入图片描述

文章部分信息来源于网络,如有侵权请告知

相关内容

热门资讯

长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
1秒多少毫秒 1秒等于多少毫秒... 长度单位换算1丈=10尺;1尺=10寸;1寸=10分;1分=10厘;1丈≈3.33米;1尺≈3.33...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
中国电信人工电话多少 中国电信... 当我们在使用中国移动、中国电信和中国联通提供的电信业务时,可能会发生争议。建议直接向服务提供商投诉,...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...