D3 заставляет ориентированный граф с поддержкой перетаскивания, чтобы фиксировать положение выбранного узла при отбрасывании

Пример прямого графа силы можно найти здесь:http://bl.ocks.org/950642

Как я могу легко добавить поддержку перетаскивания? Следует установить фиксированный узел с текущим местоположением, где он его отбросил. Важно, чтобы остальные узлы все еще использовали «режим направленной силы». позиционировать остальные узлы на графике автоматически

https://github.com/mbostock/d3/wiki/Force-Layout

Я немного поиграл безуспешно, и мне интересно, сможет ли кто-нибудь дать мне быстрый пример того, как добавить такую поддержку, как описано выше.

 norrs06 июн. 2012 г., 09:44
Если бы это было почти близко к чему-то работающему, я бы с удовольствием опубликовал это. Но лучше использовать пример, приведенный в качестве основы, так как это самый близкий к этому момент, который я получил, иначе ничего. Во всяком случае, я вчера думал над всей проблемой и работал над некоторыми идеями. Я буду публиковать обновления, когда получу какой-либо прогресс
 norrs06 июн. 2012 г., 09:51
Идея: изменить оригинальную функцию force.drag, чтобы она не играла с фиксированным состоянием при наведении курсора мыши
 Wex06 июн. 2012 г., 07:11
Пожалуйста, напишите, что у вас есть

Ответы на вопрос(1)

Решение Вопроса

Наконец-то все заработало после того, как выяснилось, что не идеально бороться с двумя "перетаскиванием" слушатели (ваши собственные, и force.drag) подключены к узлам!

Намного лучше иметь только свой собственный & lt; drag & quot; -listener и вызывать tick () вручную, что является ключевой особенностью получения графа силы для позиционирования узлов для вас на каждой новой позиции узла на узле, который вы перетаскиваете.

Рабочий пример:http://bl.ocks.org/2883411

 07 июн. 2012 г., 10:51
хорошая работа :) вы должны добавить это в вики d3
 16 авг. 2012 г., 20:07
Он не отображается должным образом в FF. Узел для перетаскивания не появляется. В Chrome изображение в узле предназначено для неработающей ссылки на изображение.
 23 февр. 2013 г., 07:49
Кстати, на моем Macbook Pro с текущей версией FF и Chrome Chrome выглядит лучше всех. ФФ выглядит заикающимся.
 norrs09 июн. 2012 г., 20:37
Хороший план, я сделаю это :-)
 norrs22 февр. 2013 г., 23:19
@Spaceghost: обновлено изображение svg, чтобы теперь использовать значок github. Прекрасно работает в Chrome. Когда дело дошло до FF, я обнаружил, что он имеет плохую производительность по сравнению с Chrome для этих графиков, так как алгоритм принудительного размещения довольно ресурсоемкий. (протестировано с версией iceweasel 10.0.12 (версия firefox для Debian в Debian). Но она тоже заикается:bl.ocks.org/mbostock/1129492 поэтому я виню фф. Может, лучше работает в новой версии?

Ваш ответ на вопрос