Я использую стратификацию для построения дерева d3 из плоской структуры данных.Однако некоторые поля отсутствуют, когда я пытаюсь вызвать их с помощью d.data. fieldname
Вот моя структура данных:
var flatData = [
{"name": "Data Encrypted", "parent": null, "category": "test", "score": null },
{"name": "Malware on Target", "parent": "Data Encrypted", "category": "test", "score": null },
{"name": "Malware executed", "parent": "Data Encrypted", "category": "test", "score": "1" },
{"name": "Files modified", "parent": "Data Encrypted", "category": "test", "score": "1" },
];
Я строю иерархическую структуруструктура данных с помощью этой команды стратификации:
var treeData = d3.stratify()
.id(function(d) { return d.name; })
.parentId(function(d) { return d.parent; })
(flatData);
Дерево d3 отображается правильно, и я могу развернуть / свернуть узлы и т. д., а также отобразить идентификатор и имя каждого узла, используя d.data.id и d.data.name соответственно.Если я пытаюсь использовать d.data.score или d.data.category для отображения данных, я получаю ошибку «undefined».
Любая информация, которая может помочь мне обойти эту проблему, будет принята с благодарностью.