R包:TreeAndLeaf二分类树构建R包

介绍

树形图显示了二叉树,重点是表示树元素之间的层次关系。树状图包含节点、分支(边)、根和叶。根是分支和节点的来源,指示到叶的方向,即终端节点。

树形图布局的大部分空间用于排列分支和内部节点,留给叶子的空间有限。对于大的树形图,叶片标签通常被压缩到小的凹槽中。因此,当要显示的信息应该突出显示叶子时,树形图可能无法提供最佳布局。

TreeAndLeaf包旨在通过结合树形和力定向布局算法,将分析的重点转移到叶子上,从而提高树形图叶子的可视化效果。包的工作流程如图所示。

加载R包

R 复制代码
library("TreeAndLeaf")
library("RedeR")
library("igraph")
library("RColorBrewer")

导入数据

R 复制代码
data("USArrests")
head(USArrests)

数据处理

  • 构建一个树状图示例
R 复制代码
hc <- hclust(dist(USArrests), "ave")
plot(hc, main="Dendrogram for the 'USArrests' dataset",
     xlab="", sub="")
  • 转换 hclust 数据对象 成 a tree-and-leaf 数据对象
R 复制代码
tal <- treeAndLeaf(hc)
  • 设置图属性
R 复制代码
tal <- att.mapv(g = tal, dat = USArrests, refcol = 0)
pal <- brewer.pal(9, "Reds")
tal <- att.setv(g = tal, from = "Murder", to = "nodeColor", 
                cols = pal, nquant = 5)
tal <- att.setv(g = tal, from = "UrbanPop", to = "nodeSize",
                xlim = c(10, 50, 5), nquant = 5)
tal <- att.addv(tal, "nodeFontSize", value = 15, index = V(tal)$isLeaf)
tal <- att.adde(tal, "edgeWidth", value = 3)

画图

R 复制代码
#--- Call RedeR application
rdp <- RedPort()
calld(rdp)
resetd(rdp)

#--- Send the tree-and-leaf to the interactive R/Java interface
addGraph(obj = rdp, g = tal, gzoom=75)

#--- Call 'relax' to fine-tune the leaf nodes
relax(rdp, p1=25, p2=200, p3=5, p5=5, ps=TRUE)

#--- Add legends
addLegend.color(obj = rdp, tal, title = "Murder Rate", 
                position = "topright")
addLegend.size(obj = rdp, tal, title = "Urban Population Size",
               position = "bottomright")
相关推荐
龙亘川3 小时前
系统监控业务建模:从运行状态监测到异常处置恢复闭环
大数据·人工智能·智慧城市·开源软件·数据可视化
逐光者9335 小时前
滤波器的 R 与 C 如何选择:从截止频率到工程实践
c语言·开发语言·r语言
临床数据科学和人工智能兴趣组6 小时前
正则表达式的基础语法的常用字符类
数据库·r语言·r语言-4.2.1·临床研究·临床试验
龙亘川8 小时前
数字化支撑社保合规治理:亘川智城智慧人社模块实践路径
大数据·人工智能·智慧城市·开源软件·数据可视化
Flynt20 小时前
开源"间谍卫星"说数据全是真的,我把它的免key数据源挨个试了一遍
前端·开源·数据可视化
柳杉21 小时前
借助 Codex 和可视化工作流,从调研到完整实现,3D 大屏竟然可以这么简单
前端·ai编程·数据可视化
纸片人1 天前
甲方只给了一张卫星截图,我用 Three.js + Blender 建了一座 3D 能源站
three.js·数据可视化
纸片人1 天前
从一座城市钻进一个房间:Three.js + Blender 做一个五级钻取的数字楼宇大屏
three.js·数据可视化
数脉1 天前
数据血缘的八个典型企业应用场景
数据挖掘·数据分析·数据可视化
梦想的初衷~1 天前
从通量数据到SCI论文——AI-R语言生态系统碳水热通量及其机制分析与论文实战
人工智能·机器学习·r语言·r 语言·fluxnet·涡度·生态系统碳通量