vis js установите физиологию c для включения ошибки: превышен максимальный размер стека вызовов - PullRequest
0 голосов
/ 31 января 2020

это мой график на данный момент.

enter image description here

У меня 4700 узлов и 0 ребер. Чтобы получить самый быстрый рендеринг, я сохраняю все точки в своей базе данных и в следующий раз отключаю физику c, чтобы показать их.

Что я делаю:

1 - я делаю запрос sql

2 - я анализирую свои данные следующим образом:

var info_graph = JSON.parse(info_network);

3 - я передаю свои данные и устанавливаю свою сеть

 for (x in info_graph)
        {
     network.setData(nodes.add([
             {id: info_graph[x]['id'],title:info_graph[x]['username'],value:info_graph[x]['poids']/100,label:info_graph[x]['id'],color: 'grey',x:info_graph[x]['posx'],y:info_graph[x]['posy']}
                        ])
                    );
}

После того, как я установил цвет, но это не важно.

Так что теперь, когда включен физиологический c, я могу отрисовать 5000 точек менее чем за 5 секунд. Если физиолог c включен, это 1 минута.

Итак, я отключаю физи c и устанавливаю все позиции. они находятся в моей базе данных.

Проблема:

Я не могу установить физиологию c для включения с помощью этой команды: network.setOptions ({физика: true});

Я получил эту ошибку: Uncaught RangeError: Превышен максимальный размер стека вызовов

Итак, резюме:

1- Когда физ c включено, а позиции x и y не заданы, рендеринг занимает 1 минуту, это слишком долго.

2 - Когда физиологическая функция c отключена, и я установил позиции x и y, рендеринг занимает 5 секунд, но я не могу включить физи c.

Я хочу включить физи c после рендера, потому что я хочу правильно расположить НОВЫЕ узлы. В конце я мог бы обновить всю свою таблицу, указав новую позицию каждой точки.

Что я могу сделать, чтобы сделать более быстрый рендеринг с включенной поддержкой Phys c и большим количеством узлов или как я могу включить Phys *? 1062 * с уже установленными точками?

Спасибо!

...