это мой график на данный момент.
У меня 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 * с уже установленными точками?
Спасибо!