Отображение неровных деревьев с помощью d3tree - PullRequest
0 голосов
/ 04 января 2019

У меня есть следующие данные, которые я читаю из 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"))

Вывод отображается как показано ниже.У меня вопрос, как мне отобразить это дерево, как задумано, без пустых листьев?

d3Tree Output

1 Ответ

0 голосов
/ 04 января 2019

Просто сделайте NA s пустыми строками при чтении вашего файла:

TN<-read.csv("nodes.csv", na.strings="")

Нет необходимости приводить к data.frame, поскольку read.csv уже возвращает data.frame и не нужнотакже указать header и sep, которые являются правильными по умолчанию.С другой стороны, вам нужно указать значения, которые вы хотите перевести в NA s при чтении файла, и в этом случае это пустая строка.

...