У меня большой CSV, структурированный так:
id,value
Animal,
Animal.Cat,
Animal.Cat.Female,
Animal.Cat.Female.Domestic,
Animal.Cat.Female.Domestic.Kittn,
Animal.Cat.Female.Domestic.Kittn.Brown,
Animal.Cat.Female.Domestic.Kittn.Brown.Pearl,"Pearl.Cat.Domestic.Brown.Female.Kittn.43529.K19-032349.Ca03.A387384.05/25/2019.05/29/2019.4.Stray.Over_The_Counter.Transfer.Hssc.Treatable/Rehab.Treatable/Rehab.County.County.95407.95407(38.403734,_-122.736775).1"
Animal.Cat.Male,
Animal.Cat.Male.Domestic,
Animal.Cat.Male.Domestic.Small,
Animal.Cat.Male.Domestic.Small.Brown,
Animal.Cat.Male.Domestic.Small.Brown.Elliott,"Elliott.Cat.Domestic.Brown.Male.Small.05/31/2005.K19-032383.Vet.A387892.05/31/2019.05/31/2019.0.Stray.Field.Euthanize..Unknown.Dead.Santa_Rosa.Santa_Rosa.95404.95404(38.458384,_-122.675588).1"
Я использую модуль иерархии d3 для создания древовидной диаграммы. После построения иерархии с помощью d3.stratify
я пытаюсь получить доступ к исходным значениям id
и value
из CSV:
nodes.append("text")
.text(function(d) {
var string = d.id.substring(d.id.lastIndexOf(".") + 1);
console.log(d.id + " " + d.value);
return string.replace(/_/g, " ");
})
Использование d.id
успешно возвращает значение id
, но ведение журнала d.value
дает undefined
.
Вот исполняемый файл CodeSandbox , демонстрирующий проблему.