d3.js: как создавать кластеры принудительно ориентированного графа

Я изучал библиотеку d3.js и особенно создание графа с принудительной направленностью. Я просмотрел статью Бостока и др. об этом и заметил точный тип графика, который я пытаюсь создать, в основном график, направленный силой, с областями с цветовой кодировкой, окружающими группы пера.

Это иллюстрация в 3-м столбце, 2-й строке здесь, помеченная как «кластеры принудительно направленного графа»: http://vis.stanford.edu/papers/d3

код здесь генерирует базовый график: http://mbostock.github.com/d3/ex/force.html

Мой вопрос: что такое код для динамической генерации полигонов региона?


person AcroYogi    schedule 24.05.2012    source источник


Ответы (3)


Вы можете попробовать интегрировать пример кода корпуса с силовыми узлами.

Корпус: http://bl.ocks.org/mbostock/4341699

Принудительный макет: http://bl.ocks.org/mbostock/1021841

Это ответ, который я дал в комментариях:

http://bl.ocks.org/donaldh/2920551

person donaldh    schedule 25.05.2012
comment
это, @donaldh, определенно является толчком в правильном направлении... теперь, только если бы я был кодером... я дизайнер, не могли бы вы предложить более конкретные примеры интеграции - person AcroYogi; 03.06.2012
comment
Я хотел поэкспериментировать с этим сам, поэтому взломал пример с несколькими фокусами силы, чтобы добавить выпуклую оболочку. http://bl.ocks.org/2918073. Когда у меня будет возможность, я расширим пример, чтобы создать путь вокруг каждой категории узлов. - person donaldh; 12.06.2012
comment
Хорошо, вот v2 с выпуклой оболочкой для каждого кластера узлов. bl.ocks.org/2920551. bl.ocks.org, похоже, сейчас не работает, так что вот суть gist.github.com/2920551 - person donaldh; 13.06.2012
comment
Вау, Дональд! Это идеально! удивительно! Потрясающие! СПАСИБО! - person AcroYogi; 31.07.2012

См. пример принудительного кластера в репозитории D3. .

person mbostock    schedule 24.05.2012
comment
Спасибо, Майк. Я посмотрел на это... на этом есть расширяемые круги, представляющие кластеры. Доступен ли код для рендеринга реальных динамических полигонов, как показано на рисунке? - person AcroYogi; 02.06.2012
comment
ссылка теперь 404. Не могли бы вы это исправить? - person bluesmoon; 21.01.2015
comment
Вот пример расстановки сил кластера - person dotcomXY; 07.06.2015

Если вы имеете в виду код, который создает круговые узлы на графике:

   var node = svg.selectAll("circle.node")
       .data(json.nodes)
     .enter().append("circle")
       .attr("class", "node")
       .attr("r", 5)
       .style("fill", function(d) { return color(d.group); })
       .call(force.drag);
person trevorism    schedule 24.05.2012