С помощью какого программного обеспечения я могу создавать такие карты сети?

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

Единственная проблема с этим изображением заключается в том, что оно фактически не содержит значков реальных сетевых элементов. Я хочу заменить значки, показанные на рисунке, на real(не символические) значки оборудования и создать аналогичную трехмерную карту.

введите описание изображения здесь

Может ли кто-нибудь предложить мне хорошее программное обеспечение для выполнения этой работы?

Примечание. На самом деле это кросс-пост. Сначала я разместил это на сервере с ошибкой , и, вероятно, оно будет закрыто на этом сайте. Так что спрашивайте здесь.

Ответы (4)

То, о чем вы просите, может быть выполнено многими программами 3D-рендеринга (Cinema 4D, Maya и т. д.). Бесплатный среди них называется Blender . К сожалению, использование этой программы требует обучения, и вы, вероятно, потратите значительно больше времени, чем на 2D-карту сети, но это может быть то, что вы ищете. Я согласен, однако, что эту форму намного легче переварить, чем устаревшие 2D-карты сети, которые я видел, - она ​​дает физические местоположения соединений, которые помогают понять соединения.

Я согласен с тем, что 3D-карта, вероятно, будет ненужным отвлечением от ваших данных. Тем не менее, это может быть полезно для интерактивного использования — если вы можете анимировать прохождение или облет, это может добавить информативности.

Подобные графики легко кодировать в Mathematica. Этот код (с некоторыми случайными данными):

vertexshape[{xc_, yc_, zc_}, name_] :=

If[Mod[ToExpression[name], 3] == 0,
  {White, Text[name, {xc, yc, zc}], RandomChoice[{Orange, Green}], 
   Cuboid[{xc, yc, zc} - .1, {xc, yc, zc} + .1]}, 
  {Yellow, Text[name, {xc, yc, zc}], RandomChoice[{Purple, Blue}], 
   Sphere[{xc, yc, zc}, .1]}] 
edgeshape[vertices_, nodes_, label_] :=

If[Mod[ToExpression[First[nodes]], 3] == 0, 
  {Red, Cylinder[vertices, .05]},
  {Gray, Cylinder[vertices, .02]}]

g = TreeGraph[RandomInteger[#] -> # + 1 & /@ Range[0, 520]];

GraphPlot3D[g,
 VertexRenderingFunction -> vertexshape,
 EdgeRenderingFunction -> edgeshape,
 PlotStyle -> 
  Directive[EdgeForm[None], FaceForm[Orange, Red], 
   Specularity[White, 30]],
 Boxed -> False, 
 Background -> Black]

генерирует такие изображения

график:

Честно говоря, если карта в 2D, я не вижу смысла делать ее 3D любой ценой... Я имею в виду, что если вы хотите иметь что-то в 2D, есть много (более простых) способов добиться этого, первое, что приходит на ум, — это использование кода для создания графика, если у вас есть такой набор данных. Хорошим примером может быть d3.js, относительно простая для понимания библиотека, если у вас есть хорошие основы html, css и немного javascript. То, что вы ищете, можно увидеть здесь: http://excelramblings.blogspot.it/2013/06/visualization-of-sites-to-tags-with-d3js.html .

Большинство сетевых визуализаций в наши дни могут обрабатывать большие данные, а некоторые из них будут иметь 3D-опции. Лично я думаю, что 3D часто побеждает цель, но это мое личное мнение.

Обратите внимание, что сетевая визуализация — это не то же самое, что многомерная визуализация, и что некоторые из них ограничены сетями и, следовательно, основаны только на узлах. У некоторых могут быть плагины для расширения сетевого анализа:

Gephi.org — готовые варианты немного ограничены, но есть множество плагинов для продвинутых альтернатив.

ИнфоВиз

Sci2Tool

Ключевые линии

Визуализатор Sentinel

GraphInsight

NodeXL — на основе Excel

Линкуриус

Текстура

In-spire - визуальный анализ документов

Не на основе узлов, а еще один подход к визуализации сети:

цирки

введите описание изображения здесь