用 d3tree 显示不均匀的树
Display uneven Trees with d3tree
我从 csv 文件中读取了以下数据:
Level1,Level2,Level3,value
1,1.1,1.1.1,1.0
1,1.2,,1.1
1,1.3,1.3.1,1.0
2,2.1,,1.1
2,2.2,2.2.1,1.5
3,3.1,3.1.1,1.2
3,3.1,3.1.2,1.4
如您所见,我的树深度因不同的分支而异。我使用下面的代码在 R 中显示树。
require(d3Tree)
TN<-as.data.frame(read.csv("nodes.csv",header=TRUE,sep=","))
TNjson<-df2tree(rootname="root",TN,toolTip = TN$value)
d3tree(list(root=TNjson,layout="cartesian"))
输出显示如下。我的问题是如何按预期显示这棵树,没有空叶子?
读取文件时,只需将 NA
s 设为空字符串即可:
TN<-read.csv("nodes.csv", na.strings="")
无需强制转换为 data.frame
,因为 read.csv
已经 returns 为 data.frame
,也无需指定 header
和 sep
,默认情况下是正确的。另一方面,您需要在读取文件时指定要转换为 NA
s 的值,在本例中为空字符串。
我从 csv 文件中读取了以下数据:
Level1,Level2,Level3,value
1,1.1,1.1.1,1.0
1,1.2,,1.1
1,1.3,1.3.1,1.0
2,2.1,,1.1
2,2.2,2.2.1,1.5
3,3.1,3.1.1,1.2
3,3.1,3.1.2,1.4
如您所见,我的树深度因不同的分支而异。我使用下面的代码在 R 中显示树。
require(d3Tree)
TN<-as.data.frame(read.csv("nodes.csv",header=TRUE,sep=","))
TNjson<-df2tree(rootname="root",TN,toolTip = TN$value)
d3tree(list(root=TNjson,layout="cartesian"))
输出显示如下。我的问题是如何按预期显示这棵树,没有空叶子?
读取文件时,只需将 NA
s 设为空字符串即可:
TN<-read.csv("nodes.csv", na.strings="")
无需强制转换为 data.frame
,因为 read.csv
已经 returns 为 data.frame
,也无需指定 header
和 sep
,默认情况下是正确的。另一方面,您需要在读取文件时指定要转换为 NA
s 的值,在本例中为空字符串。