Я пытаюсь отобразить график с помощью D3.JS и получаю эту ошибку.
Я просмотрел это и это ничего не сработало.
перед отправкой своих данных в D3.JS я проверил, и вот мои узлы и ребра
0
{группа: 4, идентификатор: 0, имя: "LATS1"} 1
{группа: 1, идентификатор: 455, имя: "ROCK2"} 2
{группа: 1, идентификатор: 456, имя: "MK13"} 3
{группа: 1, идентификатор: 457, имя: "ПДПК1"} 4
{группа: 1, идентификатор: 458, имя: "AAPK1"} 5
{группа: 1, идентификатор: 459, имя: "STK3"} 6
{группа: 1, идентификатор: 460, имя: "NEK11"} 7
{группа: 1, идентификатор: 461, имя: "LATS1"} 8
{группа: 1, идентификатор: 462, имя: "CDK1"} 9
{группа: 1, идентификатор: 463, имя: "DYRK2"} 10
{группа: 1, идентификатор: 464, имя: "NUAK1"} 11
{группа: 2, идентификатор: 1, имя: "MSX2"} 12
{группа: 2, идентификатор: 2, имя: "G6PD"} 13
{группа: 2, идентификатор: 3, имя: "ALDH2"} 14
{группа: 2, идентификатор: 4, имя: "CDN2A"} 15
{группа: 2, идентификатор: 5, имя: "ТИТИН"} 16
{группа: 2, идентификатор: 6, имя: "SP1"} 17
{группа: 2, идентификатор: 7, имя: "РАД"} 18
{группа: 2, идентификатор: 8, имя: "SMAD3"} 19
{группа: 2, идентификатор: 9, имя: "APC1"} 20
{группа: 2, идентификатор: 10, имя: "TY3H"}
длина : 21
А вот и мои края
{метка: 0,785, источник: 0, цель: 1} 1
{метка: 0,787, источник: 0, цель: 2} 2
{метка: 0,778, источник: 0, цель: 3} 3
{метка: 0,777, источник: 0, цель: 4} 4
{метка: 0,774, источник: 0, цель: 5} 5
{метка: 0,786, источник: 0, цель: 6} 6
{метка: 0,776, источник: 0, цель: 7} 7
{метка: 0,769, источник: 0, цель: 8} 8
{метка: 0,763, источник: 0, цель: 9} 9
{метка: 0,762, источник: 0, цель: 10} 10
{метка: 0,825, источник: 455, цель: 0} 11
{метка: 0,792, источник: 456, цель: 0} 12
{метка: 0,811, источник: 457, цель: 0} 13
{метка: 0,748, источник: 458, цель: 0} 14
{метка: 0,747, источник: 459, цель: 0} 15
{метка: 0,744, источник: 460, цель: 0} 16
{метка: 0,751, источник: 461, цель: 0} 17
{метка: 0,754, источник: 462, цель: 0} 18
{метка: 0,752, источник: 463, цель: 0} 19
{метка: 0,73, источник: 464, цель: 0} длина
20
Вы можете убедиться, что в ссылках нет недостающих ссылок. Все узлы доступны.
Но когда я отправляю эти узлы и ребра в D3.JS, он присваивает вес: 0 некоторым узлам, что делает некоторые источники ссылок неопределенными и возвращает эту ошибку.
Если я показываю свои узлы и ссылки после отправки их в Force D3.JS, они выглядят так
Узлы:
{группа: 4, идентификатор: 0, имя: "LATS1", индекс: 0, вес: 10} 1
{группа: 1, идентификатор: 455, имя: "ROCK2", индекс: 1, вес: 1} 2
{группа: 1, идентификатор: 456, имя: "MK13", индекс: 2, вес: 1} 3
{группа: 1, идентификатор: 457, имя: "ПДПК1", индекс: 3, вес: 1} 4
{группа: 1, идентификатор: 458, имя: "AAPK1", индекс: 4, вес: 1} 5
{группа: 1, идентификатор: 459, имя: "STK3", индекс: 5, вес: 1} 6
{группа: 1, идентификатор: 460, имя: "NEK11", индекс: 6, вес: 1} 7
{группа: 1, идентификатор: 461, имя: "LATS1", индекс: 7, вес: 1} 8
{группа: 1, идентификатор: 462, имя: "CDK1", индекс: 8, вес: 1} 9
{группа: 1, идентификатор: 463, имя: "DYRK2", индекс: 9, вес: 1} 10
{группа: 1, id: 464, имя: "NUAK1", индекс: 10, вес: 1} 11
{группа: 2, идентификатор: 1, имя: "MSX2", индекс: 11, вес: 0} 12
{группа: 2, идентификатор: 2, имя: "G6PD", индекс: 12, вес: 0} 13
{группа: 2, идентификатор: 3, имя: "ALDH2", индекс: 13, вес: 0} 14
{группа: 2, идентификатор: 4, имя: "CDN2A", индекс: 14, вес: 0} 15
{группа: 2, идентификатор: 5, имя: "ТИТИН", индекс: 15, вес: 0} 16
{группа: 2, идентификатор: 6, имя: "SP1", индекс: 16, вес: 0} 17
{группа: 2, идентификатор: 7, имя: "RAD", индекс: 17, вес: 0} 18
{группа: 2, идентификатор: 8, имя: "SMAD3", индекс: 18, вес: 0} 19
{группа: 2, идентификатор: 9, имя: "APC1", индекс: 19, вес: 0} 20
{группа: 2, идентификатор: 10, имя: "TY3H", индекс: 20, вес: 0}
Края
{метка: 0,785, источник: {…}, цель: {…}} 1
{метка: 0,787, источник: {…}, цель: {…}} 2
{метка: 0,778, источник: {…}, цель: {…}} 3
{метка: 0,777, источник: {…}, цель: {…}} 4
{метка: 0,774, источник: {…}, цель: {…}} 5
{метка: 0,786, источник: {…}, цель: {…}} 6
{метка: 0,776, источник: {…}, цель: {…}} 7
{метка: 0,769, источник: {…}, цель: {…}} 8
{метка: 0,763, источник: {…}, цель: {…}} 9
{метка: 0,762, источник: {…}, цель: {…}} 10
{метка: 0,825, источник: не определен, цель: {…}} 11
{метка: 0,792, источник: 456, цель: 0} 12
{метка: 0,811, источник: 457, цель: 0} 13
{метка: 0,748, источник: 458, цель: 0} 14
{метка: 0,747, источник: 459, цель: 0} 15
{метка: 0,744, источник: 460, цель: 0} 16
{метка: 0,751, источник: 461, цель: 0} 17
{метка: 0,754, источник: 462, цель: 0} 18
{метка: 0,752, источник: 463, цель: 0} 19
{метка: 0,73, источник: 464, цель: 0}
Эта жирная линия вызывает эту проблему
Вот мой код для силы
var force = d3.layout.force()
.nodes(nodes_, function(d) {
if(d.weight == 0) {d.weight=1;}
}
)
.links(edges_)
.size([w, h])
.linkDistance(function (d, i) {
if (d['target']['group']==1){
return linkDistance1;
}
if (d['target']['group']==2){
return linkDistance2;
}
})
.charge([-500])
.theta(0.8)
.gravity(0.05)
.start();
id
). Как только вы доберетесь до ссылки с источником 455, инициализация вашего узла/ссылки вызовет ошибку, потому что в вашем массиве узлов нет 456 элементов. - person Andrew Reid   schedule 04.10.2018id
), заменив идентификационный номер/строку на узел напрямую: stackoverflow.com/a/51390262/7106086 - person Andrew Reid   schedule 05.10.2018