关于算法:拓端tecdatR语言可视化ggplot2冲积桑基图sankey分析大学录取情况泰坦尼克幸存者数据

2次阅读

共计 2454 个字符,预计需要花费 7 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=23490 

本文介绍了冲积 / 桑基图,以及

  • 定义了命名计划和冲积 / 桑基图的根本组成部分(轴、冲积层、流)。
  • 形容了所辨认的冲积 / 桑基图数据结构。
  • 展现了一些风行的主题。

冲积 / 桑基图

这里有一个典型的冲积 / 桑基图。

当初,咱们以该图像为参考点,定义典型冲积图的以下元素。

  • 轴是一个维度(变量),数据沿着这个维度在一个固定的程度地位被垂直分组。下面的图应用了三个分类轴。船舱等级、性别和年龄。
  • 每个轴上的组被形容为不通明的块,称为类别。例如,类别轴蕴含四个等级的舱:一等舱、二等舱、三等舱和船员。
  • 程度样条被称为冲积流,横跨该图。在该图中,每个冲积层对应于每个轴变量的一个固定值,由其在轴上的垂直地位示意,由其填充色彩示意。
  • 相邻轴对之间的冲积段是流动的。
  • 冲积与层相交的节点。节点在下面的图中并不直观,但能够推断为填充的矩形,它将层中的流延长到图的两端,或者将核心层两边的流连接起来。

正如下一节中的例子所示,这些元素中哪些被纳入冲积图,取决于根底数据的构造和创建者心愿图中传播的内容。

冲积 / 桑基图数据

辨认两种格局的 “ 冲积 / 桑基图数据 ”,它们基本上对应于分类反复测量数据的 “ 宽 “ 和 “ 长 “ 格局。第三种,表格(或数组)模式,风行于存储具备多个分类维度的数据,如泰坦尼克号幸存数据和大学录取状况数据集。

(宽)格局数据

宽格局数据每一行都对应于在每个变量上取一个特定值的察看队列,每个变量都有本人的列。另外一列蕴含了每一行的数量,如队列中的察看单元数,可用于管制层的高度。基本上,宽格局由每一冲积层的一行组成。这是根底函数 as.data.frame() 转换频率表的格局,例如 3 维的大学录取状况数据集。

head(as.data.frame(UCBAdmissions), n = 12)

这种格局:用户申明数量的轴变量,辨认并解决。

  

``````
plot(pltdat1,
 aes(y = Freq)) +
strat(width = 1/12) +
geom_label(stat = "stratum")) +
ggtitle("大学录取和回绝状况,按性别和系别分列")+theme_bw()

这些图的一个重要特色是纵轴的意义。各层之间没有插入空隙,所以图的总高度反映了观测值的累积数量。

  

``````
plot((Titanic),stratumwidth = 1/8, reverse = FALSE ,stat = "stratum", aes(label = after_stat(stratum)), labels = c("幸存", "性别", "船舱等级")) +
title("按等级和性别划分的泰坦尼克号幸存情况")+theme_bw()

这种格局和性能对很多利用都很有用。

  • axis[0-9]* 示意地位。
  • 由 stat_stratum() 产生的分层变量。
  • 横轴反映辨认该轴的隐含分类变量。

此外,像填充这样的格局美学对于每个冲积图来说都是固定的;例如,它们不能依据每个轴的取值而在轴之间变动。这意味着,只管它们能够重现平行集的分支树结构,但这种格局和性能不能产生具备这里(” 冲积图 ”)和这里(” 管制色彩 ”)特色的色彩计划的冲积图,它们在每个轴上都被 “ 重置 ”。

(长)格局

长格局蕴含了每一节的一行,变成一个键值对,编码轴为键,层为值的列。这种格局须要一个额定的索引列,将对应于一个独特队列的行连接起来,即一个冲积层的结点。

在宽格局(alluvia)和长格局(lodes)之间转换数据的函数包含几个参数。

同样的 stat 和 geom 能够应用一套不同的地位美学来接管这种格局的数据。

  • x,示意该行所对应的轴的 "键" 变量,要沿横轴排列。
  • 层,由 x 示意的轴变量的 "值";以及
  • 冲积层,连贯单个冲积层的行的索引计划。

难民数据分析

在这些状况下,分层没有蕴含比冲积层更多的信息,因而通常不会被绘制。作为一个例子,咱们能够将难民数据集中的国家按地区分组,以比拟不同规模的难民数量。

qplot(data = Refug,x = year, y = refugees,
 alluvium = country,fill = country, 
colour = country)

该格局容许咱们指定沿同一冲积层的不同轴线变动的美学,对反复测量数据集很有用。须要为每个冲积物生成一个独自的图形对象。

学术课程剖析

上面的图表应用了一组学生在几个学期内的学术课程的(变动)。在所有学期中跟踪每个学生。

ggplot(majos,flow = "alluvium", lode = "frontback",legend.position = "bottom")

分层高度 y 没有被指定,所以每一行都被赋予单位高度。这个例子展现了解决缺失数据的一种形式。缺失数据的解决(特地是层的程序)也取决于层变量是字符还是因子 / 数字的。

最初,咱们提供了汇总相邻轴之间流量的选项。咱们能够在流感疫苗考察的数据上演示这个选项。

qplot(vaccina,x = survey, stratum = response, alluvium = subject,
           y = freq, stat = "stratum", size = 3)

这张图疏忽了轴之间流动的连续性。这种 “ 无记忆 “ 图产生了一个不那么芜杂的图,其中最多只有一个流量从一个轴上的每个层到下一个轴上的每个层。


最受欢迎的见解

1.R 语言动态图可视化:如何、创立具备精美动画的图

2.R 语言生存剖析可视化剖析

3.Python 数据可视化 -seaborn Iris 鸢尾花数据

4.r 语言对布丰投针(蒲丰投针)试验进行模仿和动静

5.R 语言生存剖析数据分析可视化案例

6.r 语言数据可视化剖析案例:摸索 brfss 数据数据分析

7.R 语言动静可视化:制作历史寰球平均温度的累积动静折线图动画 gif 视频图

8.R 语言高维数据的主成分 pca、t-SNE 算法降维与可视化剖析案例报告

9.python 主题 LDA 建模和 t -SNE 可视化

正文完
 0