常言道,一图胜千言,而JMP Graph Builder创建的图形堪称艺术佳作,能够有效地向观众传递信息。本次期刊演讲将重点介绍如何使用JMP Graph Builder构建流行且引人入胜的图表视图。
基于广受欢迎的“图库图片”系列期刊,Gallery 9 演示文稿重点介绍了 JMP 最新版本中新增的视图和技巧。我们展示了几种您可能不知道可以在 JMP 中轻松构建的常用行业图表格式。其中包含超级图、叠加编码、页面网格、环形图等视图,让您的图表和报告焕然一新!
我们马上开始。欢迎大家来到“图库精选9:更高级的图表构建视图”。我是Scott Wise,在JMP工作了16年,有机会接触到很多图表相关的内容,并继续为大家带来这个系列。我们将展示六个使用图表构建器完成的非常有趣的挑战,旨在拓展图表构建器的功能。
在正式开始之前,我们总是喜欢先抛砖引玉,引发大家的思考。我坚信,图表构建能帮助大家建立联系。我的灵感来源于詹姆斯·伯克创作的一档英国历史教育节目,名为《联系》(Connections)。这档节目回顾历史,揭示了看似毫不相干的事件是如何相互关联,并最终推动了重大变革的。我今天想和大家分享一个相关的案例,而我将通过图表来阐述。我最初是在研究德克萨斯州蝙蝠的分布情况。在分析这些数据的过程中,我了解到了三角测量法——一种计算距离的方法。而这又让我联想到了彩色玻璃。
最后,我意识到这或许能帮助保护像巴黎圣母院这样的地标性建筑。接下来,我将用我们的数据向大家展示这些关联是如何体现的。这是我们的数据。我刚刚在JMP中整理了一些德克萨斯州境内蝙蝠栖息地的信息。它们可能栖息在桥下,也可能藏身于洞穴之中。我们这里蝙蝠的数量相当多。您可能会注意到,我不仅记录了这些区域的名称,还记录了它们的具体位置、蝙蝠数量,而且,为了提醒大家,在JMP中,您还可以导入图片。您只需将列设置为表达式数据类型即可。您可以导入图片,并将其用作标签或悬停元素。这挺有意思的。
我掌握了这些信息,并制作了一张地图。这张地图展示了德克萨斯州中部所有蝙蝠栖息地的分布情况,我们记录了一些蝙蝠种群数量。有些地方蝙蝠数量非常庞大,比如圣安东尼奥附近和布雷肯洞穴保护区,那里有1500万只蝙蝠。我住的地方离这里很近。这是奥斯汀的国会大道桥,那里只有150万只蝙蝠。这张地图让我大致了解了蝙蝠种群的分布情况,但分布并不均匀。我希望能够获得一个图表,以便查看更多信息。我听说在“图表”菜单和“图表构建器”中都可以找到一种叫做“等高线图”的图表。
我要重新开始处理这些信息。我们先新建一个图表。选择“图表”>“图表构建器”。我把纬度放在 Y 轴,经度放在 X 轴。这次,我保留点,但会添加等高线。我要把这条平滑的线段改成等高线元素。如果你想的话,也可以从菜单栏里找到它。我要把蝙蝠数量放在颜色区域,因为如果放在颜色区域,就会出现边界线和填充区域。
如果我往下看,在这个轮廓区域,我甚至可以选择色阶数。我把它调到 10,然后降低填充,只给线条着色。这样对我的眼睛很有帮助,也让我能更好地观察整个区域,找到人口密度较高的区域。但我对这个很感兴趣。我想知道,他们是怎么得出这些边界的?一个很好的提示是,如果你看一下下面的这个透明度滑块,如果我把它一直拉到最右边,你会看到当我开始向左移动它时,它用三角形连接了这些点。它实际上是利用三角剖分来创建这个视图的。这让我对它有了更深入的了解。我会把这些内容写进这篇日志里,然后分享给你。我们社区中有一篇来自 Dan Schikore 的精彩博客,内容是关于图形生成器中的等高线图,他在博客中提到:“哦,它使用了 Delaunay 三角剖分方法。”
这是一种基于几何的距离计算方法,真的很棒。我想把这些三角形画出来,但它提示说图形生成器里没有这个选项。
但我们并非束手无策。原来,如果我进入主菜单“图表”,而不是直接进入“图表构建器”,而是选择等高线图(他们称之为“旧版平台”),就会弹出一个完整的对话框。如果我填写这个对话框,将经纬度放在 X 轴,蝙蝠数量放在 Y 轴。现在,在我的红色三角形下方出现了更多选项。我还可以指定层数。我把它改回 10。但这次还有一个额外的选项:保存,我可以保存三角形。保存三角化。你可以看到它列出了用于生成该图表的三角形不同位置的坐标。我觉得这很棒,我很想看看能否用它做更多的事情。保存三角化后,我回到“图表构建器”,随意输入了一些点和线,就得到了这个结果。
现在,我要关闭线条填充,这样你就能看到发生了什么。如果我点击右边这个蓝点,它能提供足够的信息来绘制三角形的两条边,但它并没有闭合。
我只能看到每个三角形的两条边。所以我需要稍微调整一下,因为如果之后我想填充它,就无法正确显示。我意识到我需要做的是添加第三条线,也就是三角形的第三条边。这条线可能是一条边,也可能是两条边,但我需要把它放回原来的位置。你看,我把第一个三角形的位置复制到它正下方,这样它就有地方可以放置了。现在,当我查看我的“线和点”图形生成器时,你可以看到它看起来好多了。我打开控制面板,这样你就可以看到我的设置了。行顺序很重要,所以你要确保选中它。在我使用的填充方式中,这里是“无填充”。你可以看到它完成了所有三角形的绘制,并给它们赋予了不同的线条颜色,这很不错。
在填充方面,如果您使用下面的填充颜色,效果会非常好,现在每个三角形内都有不同的颜色。
我看了看这个,在我看来,它像彩色玻璃,不是吗?就像有人用马赛克艺术或者彩色玻璃窗的方式制作的,而且他们只用了三角形。我开始发现这里面有某种规律。我回到之前保存的三角剖分图,并进行了编辑。我删除了一些不重要的三角形。现在看起来是这样的。你能看出形状了吗?为什么这能帮助防止2019年巴黎圣母院发生的那场大火呢?他们一直在慢慢重建,我想现在已经完全恢复开放了。我想,与其使用普通的历史彩色玻璃,他们或许可以找到地方安装我这扇漂亮的蝙蝠彩色玻璃窗。在我看来,它很像蝙蝠侠的标志。如果我们用光照射它,如果它着火了,或者有人在偷东西,那么我们就可以通知蝙蝠侠,蝙蝠侠就可以出来救我们了。
只是随便玩玩。但这确实是一种很有趣的方式,可以更深入地探索轮廓线的功能,观察它们之间的关系,甚至最终呈现出美丽的艺术作品。
这只是个小小的热身,但希望您已经感受到等高线图的魅力。接下来,让我们直接欣赏图库中的图片。在接下来的20分钟里,我将逐一讲解我们这次挑选的六个视图。这是我们的第九期节目。每次客户问我们:“嘿,你们在图形生成器里是怎么实现这个的?”
我们将学习超级图。我们会学习泳道图、叠加编码和页面网格,以及 JMP 18 的新增功能——生存风险图和环形图。我们先来看第一个。正如我之前提到的,我会给你一份日志。日志里会包含一张图,展示我们想要实现的效果、它的优点以及一些制作技巧。如果你想重新绘制这张图,我提供了详细的步骤说明,日志里也包含了原始数据和最终生成的图表脚本。你可以按照这些步骤自己动手。现在,我要点击这个超级图。超级图是一种展示大量信息的方式。
如果我看一下我这里的内容,我有两个处理组,每个处理组又分为三组。分组很多。这是数据,这是Y轴。您可以看到,这里我甚至还有一个小公式,用来计算各组的平均值。这个2.8是A组的平均值,5.7是B组的平均值,以此类推。我有很多信息。我能把所有这些信息都放在一个图表上吗?我打开图表编辑器。我要把连续输出(数据和平均值)放在Y轴上。我要把处理放在X轴上。我要把分组放在叠加层上。看起来很复杂。它还会更复杂。我不只是放一组数据点,我要在图表中右键单击。我要添加第二个数据点元素。没关系,因为在这个第一个数据点上,我要进入这里,在显示该图表元素所依据的变量框下方。
我觉得你只需要处理数据就行了。实际上,为了方便起见,我甚至可以直接称之为数据点。
接下来,这里显示的是均值点。在这些均值点上,我会去掉常规数据,只显示均值。可以看到,均值点周围有一些分组。我会把抖动限制一直向左调整到最左侧,让它正好位于中心。现在,我们来调整一下图表。调整一下标记的设置和大小,一个好方法是在红色三角形或“图表构建器”下方进行设置。我把这些称为热点。你可以查看“图例设置”。在这个图例设置中,A 现在是蓝色的圆圈。我要把它改成实心圆。B,我们不要把它改成圆圈。对于标记,我们把它改成菱形。对于 C,我们把它改成正方形。A 的标记对于均值来说还可以,但是对于 B,我们把它的标记改成带边框的菱形,C 改成带边框的正方形。
就说“好的”。现在看起来还行,但实际上各个环节都在相互竞争。
另一个很受欢迎的小技巧是,回到我之前设置图例的地方。我们不要把它们完全透明。把透明度调到 0.25 以下。这样效果会更好。我需要对每个图例都进行这样的设置,这样它们就能更好地突出前景,并在背景中呈现出朦胧的效果。现在我可以看到 B 组的平均值在哪里,也可以看到各个图例的位置,也就是那些实心但现在透明的菱形在哪里。我已经看到了我想看到的三个东西中的两个。我们还想要什么呢?我们想要得到对照组和处理组的总平均值。为了做到这一点,我在这里(右键点击图表)添加一个柱状图。但我要使用的柱状图是一个浮点柱状图。它在平均值处有一条线。我只需要对变量进行一些设置,比如,“你知道吗?
不要进行叠加分组。直接基于原始数据进行分组,因为在对照组和处理组中,原始数据已经设置好了。
我甚至可以在这里加上误差区间和标准误差。现在我完成了。现在我已经把来自不同组别的所有信息和原始数据都放在一张图表上了。这就是你的超级轨迹。如果你喜欢这个图表,你可以随时复制一份与你的图表进行比较。它就在“超级图”下面。点击它,它就会打开。我还添加了一张背景图片。它稍微透明了一些,这样当你查看时会更醒目一些。
我们来看下一个。下一个是泳道图。感谢我的同事 Jed Campbell,他是 JMP 的一位同事,他写了一篇很棒的博客,他在博客里制作了一个漂亮的木球,需要用到不同的公式来计算尺寸,还需要一种图形化的方式来展示结果。他需要一些通道,一些泳道图,来帮助他根据当前所在的环来确定尺寸。为此,我们打开数据。制作这种图表的一个技巧是,Y 轴上的数据必须是名义数据或序数数据。
接下来,我们要将它与内半径和外半径进行比较。这些是您之前计算的连续测量值。我将打开“图形”菜单,选择“图形生成器”。我将选择内半径和外半径,并将它们都放在 X 轴上。我将选择圆环,并将其放在 Y 轴上。我将右键单击并将点更改为线。在下方,我可以看到所有关于直线的选项,我将更改连接方式,并将其设置为居中步长。我还想添加一些标签。我将右键单击此处,选择“访问设置”。我将启用网格,但您会注意到网格线,这里只是一个例子。它们穿过了标签。您可以通过选择“显示刻度标签”并选择“短分隔线”来更改此设置。现在我已经完成了,我将单击“确定”。
看起来不错。或许可以把线条颜色改成一样的。现在我们基本上有了杰德制作球所需的一切。
您可以查看环 1,了解内半径和外半径。我还有一些可选的说明,您不仅可以添加背景图片,还可以在数字旁边添加测量增量,并在图片后面添加网格线。这些功能很有用,例如在项目管理或计划管理中,我们可以用它来查看事物随时间的变化。泳道图有很多不同的用途。
下一个。这是 JMP 18 的新功能。JMP 18 今年早些时候就发布了。希望大家都能升级到新版本。JMP 18 修复了我们之前遇到的叠加编码问题。有时候,我们需要不同的视图。但如果包含叠加层,就很难实现。在 JMP 17 及更高版本中,叠加层功能非常“贪婪”。它基本上决定了线条和符号的外观,即使你预留了用于着色或样式的空间。这是美国五大湖的冰层积聚情况。我要下去采集这些数据。
这里有几个有趣的地方。我这里有一个冬季数据,比较了近期和以往的数据。他们研究了冰层积累对全球变暖的影响。这些月份里,湖面上的冰层是否减少了?我们来看看具体情况。我打开“图表”菜单。我们将冰层积累量放在Y轴上。我们按月查看,然后叠加年份数据。这里我查看的是所有五大湖的数据。现在显示的是箱线图。我不太喜欢箱线图,把它改成散点图。也许我不需要所有这些数据。也许我想要的汇总统计量是平均值。然后我右键点击这里,添加一个平滑曲线。这就是我想要的效果。每条线代表不同的年份。
我能看到它跨越不同月份的效果。看起来很棒。现在,我对这个效果已经很满意了,但是如果我把冬季的颜色也加进去会怎么样呢?
它简直乱套了。我喜欢颜色根据不同时期而变化,但我不喜欢它对那些符号的处理方式。现在,如果你进入叠加编码,右键单击,比如说进入叠加区域,右键单击,你会看到这个编码选项,它会问:你想让编码跟随你的颜色、样式还是“无”?样式设置很奇怪。它给线条赋予了各种各样奇奇怪怪的形状。这真的不是我想要的。按颜色叠加编码。它确实把线条颜色弄对了,但是每个年份、每个点都用了不同的颜色。这不是我想要的。叠加编码的一个好方法是直接选择“无”。现在我选择了“无”,它就完全符合我的预期了。现在,我可以清理一下这个图例了,实际上,就是我在这里添加到数据中的那个图例。多么漂亮的拖船背景图啊,或者[听不清 00:21:28]拖船。
但我通过本地筛选器获得了不同湖泊的图像。现在你可以看到,以密歇根湖为例,蓝色区域之前的冰层较厚,而最近的红色区域冰层较薄。
伊利湖略逊一筹。它更像是南方的一个湖泊。不出所料,你可以把它们全部放在一起看。这种叠加编码方式真是太棒了,可以让你为用户呈现你想要的视图。叠加编码。我们正在努力,而且进展顺利。
接下来我们要介绍的是生存风险图。这种图表在生物技术领域非常流行,就像超级图一样。他们想通过这个图表观察一段时间内的生存情况,并在图表下方添加一个数字表格。这背后的原理是,如果你查看数据,会发现有一个平台,它包含“分析”、“可靠性”和“生存”三个功能。不同的生存分析平台可以让你了解测试组(包括标准组和测试组)中不同阶段的生存情况。它包含所有这些有用的信息表格。这里显示的是当前阶段的生存数量。我已经获得了所有想要的信息。但我还可以右键单击这里,将其转换为一个合并数据表,这样就能整合下方表格中所有类似数据所需的信息。
所以我接下来要调出这些数据。我刚刚在测试中保存了标准值,但我已经有了生存列和风险列。我应该可以很轻松地打开图表生成器。我应该可以把生存率放在 Y 轴,时间放在 X 轴,然后关闭。我只需删除这些点。抱歉,这样看起来更平滑。我可以按组叠加,现在我确实有了第一个图表。现在我想在它下面添加另一个图表。组合图表就是在其中一个坐标轴上添加另一个部分。在这个例子中,我要选择组。我要向下移动到 Y 轴的底部。你看,它把它们分开了。很棒。我要在这里做一些操作。在下方的“点[组]”处,我要把“抖动限制”放在同一行。我要点击红色热点下方,然后选择“设置形状列依据”。
我打算根据“高危人群”来设定。现在我已经有了数据。我可以在这里进行一些调整,然后……
这就是我画对角线的地方。我可以调整一下,让它在我的数据中更清晰地显示出来。我可以在这里右键点击,然后进入图表,调整标记大小,把它放大一些,再把它拉大一些。这个筛选器用在这里效果很好。当我把它放在这里,比如说,在你的数据中,我不仅添加了背景图片,还在坐标轴上添加了一些网格线。你也可以看到,我只在这里选择了一些时间点,因为我不需要查看所有数据。现在我得到了一个非常直观的视图,我可以看到测试组中最后一个存活的个体是什么时候,标准组中最后一个存活的个体是什么时候,以及不同的生存曲线是如何影响我的存活种群的。
我觉得如果我快速讲解一下最后两个图表,时间应该还够,这样我们之后就有足够的时间进行问答环节了。接下来这个图表是 JMP 18 的另一个功能,叫做页面网格。它实际上是将多个独立的图表放在一个网格中。但在 JMP 17 中,你无法实现这种视图。你可能会注意到,这里巴西的图表是从 50,000 一直到 0。而这个图表是从 3,000 到 0。通常 JMP 只关注最大的刻度,并且会强制所有图表都使用这个刻度,这不是我们想要的。但现在在 JMP 中,你可以控制刻度。有时候你需要这个功能,有时候则不需要。在这个例子中,我将调出一些咖啡数据,包括产量、出口量和消费量。我将这些数据放在 Y 轴上,年份放在 X 轴上,并将数据点切换为折线图。
现在,我要选择这个国家。我要把它放到页面上。我还要右键点击这里的红色热点,进行一些本地数据筛选。
对于国家/地区,我先选几个,比如巴西、哥伦比亚。我把我的家乡菲律宾也放上去,我们曾经是咖啡生产大国。然后是越南。选好这些国家后,我可以右键点击这里,设置每行的级别。这样就能创建网格了。我想要两行两列的网格,我每行放两个。好了。我给你看看图表生成器这个红色热点下面的设置。你看,这里有个“链接页面”的选项。如果我回到 JMP 17 的设置,所有图表的 X 轴和 Y 轴是共享的。它们必须使用相同的 X 轴和 Y 轴。X 轴没问题,它在这里。但是 Y 轴现在强制巴西和越南的数值都达到了上限 50。我甚至都看不到菲律宾的趋势线,他们的产量太低了。
巴西的面积之大确实令人印象深刻。如果我进行横向比较,就会发现它与其他国家/地区的坐标轴相同。但现在我可以右键点击链接页面,然后选择“只显示 X 轴”。这样我就可以看到哥伦比亚的趋势比较平坦。
菲律宾虽然人口只有3000,但我看得出来消费水平很高。那里是创业的好地方,很多创业公司如雨后春笋般涌现。越南的出口增长速度甚至超过了巴西。这些都是JMP 18的页面网格功能可以实现的。
我想我们时间刚好够给你们展示最后一个。这个很有趣。可能会超时一两分钟,但我相信你们会喜欢的。JMP 里我们不太常用饼图,但有一种叫做环形图的饼图,非常适合用来创建基础图表和仪表盘。你可以用环形图作为选择器,尤其适合只有几个分类级别的情况。这里我有一个环形饼图,旁边还有一个柱状图。如果我点击这里的某个元素,柱状图的内容就会改变。我们该怎么设置呢?我这里有一些关于不同年龄段人群对甜甜圈的喜爱程度的有趣数据。你可以在这里选择你所在的年龄段。
我们要开始制作一些图表了。第一个图表是环形图。Y轴代表百分比,X轴代表类型。我要把点阵图转换成饼图。别担心,饼图样式很简单,我们用环形图就行。我要用百分比来标记这个图表。简单易用,我就把它放在这里。第二个图表也很简单。我要查看“按百分比生成”的数据。我要把点阵图转换成条形图。切换到条形图。好了。在这个条形图上,我要计算总和。双击这里的坐标轴。告诉JMP格式为百分比。添加一些网格线。现在这个图表就完成了。要把它们合并起来,最简单的方法是打开“窗口”,选择“合并窗口”。
你可以点击你想要的图表。我这里有环形图,我这里有柱状图。
实际上,通过环形图,我可以把它设置成筛选条件。我说“好了,开始吧”。现在,如果我操作正确,我想看看有多少人……嗯,我们来看看撒糖屑的甜甜圈。我想看看谁在这里撒糖屑。我点击它,你不仅可以看到……我还给图片添加了标签,提醒自己糖屑长什么样。撒了糖屑的甜甜圈看起来像Z世代或者大糖屑。现在还有谁喜欢蛋糕甜甜圈?你可以点击它们,婴儿潮一代,也许他们喜欢把它加到咖啡里。但现在,甜甜圈比咖啡便宜,对吧?我们不太这么做了。大家都喜欢糖霜甜甜圈。这是一个很棒的交互式仪表板。它可以保存回你的数据表。它可以以交互式方式保存为JMP Live中的报告。用HTML5进行交互式操作非常酷。有很多不同的分享方式。这些就是视图。我又要把这篇日志留给你们了。
走到这段录音所在的位置,你就能看到我的日志。我还会留下一些学习资源,比如教程、博客和其他演示文稿。如果你有新的想法,欢迎前往 JMP 社区的愿望清单,向我们提出你的图表和挑战。也许它们最终会出现在 JMP 的下一个版本中,并出现在图库的下一张图中。
非常感谢您的参与,祝您接下来的探索之旅一切顺利。