Я использую JSNetworkX для исследования и рендеринга графа.JSNewtworkX stop layout
JSNetworkX использует D3.js для визуализации графа. Однако, поскольку я работаю с большим графиком (json-файл около 5 Мб), я хотел бы сделать этот график напрямую без анимации (так, при размещении каждого узла напрямую без привлечения силы).
Я пытаюсь использовать D3.layout.force(). Stop() после рендеринга, но без эффектов. Из-за этого я думаю, что это нужно сделать в jsnx.draw, см. Мой код ниже.
jsnx.draw(G, {
element: 'body',
d3: d3,
layout_attr: {
charge: -1500,
linkDistance: 1,
gravity: 1,
friction: 0.4,
alpha: -100
},
});
force = d3.layout.force();
К сожалению, вы не можете использовать текущую версию. Вам нужен силовой макет вообще или у вас уже есть позиции для каждого узла? FWIW, если у вас действительно большой граф, даже статический макет будет медленным, потому что у вас все равно будет слишком много элементов SVG. Следующая версия будет включать WebGL для больших графиков. –
Ой ... Хорошо, понял. У меня уже приблизительная позиция для каждого узла (кластеризация). Итак, я буду использовать статический граф D3. Для графика 5mb требуется рентабельность в 15 секунд ... Но этого достаточно ... Спасибо за ваш комментарий и спасибо за JSNetworkX :) (я последую за его разработкой) Спасибо большое :) – Blooheek