Подтвердить что ты не робот

Визуализация графического отображения сети Java

Мне нужен граф визуализации сети (не диаграмма) в javascript для ввода json. Я также использовал JIT infovis toolkit rgraph и space tree, чтобы показать несколько уровней на графике. Но узлы обрушиваются на огромные данные. В rgraph края arroheads сливаются с узлами, в дереве пространства, если у ребенка 4 родителя, он слишком сильно помещает ребенка. поэтому он нестабилен для большого объема данных. Но я не мог найти графики, похожие на формат ввода infovis json. Пожалуйста, предложите мне альтернативу или решения для решения infovis space tree и rgraph. Спасибо заранее

4b9b3361

Ответ 1

Также проверьте D3, "библиотеку JavaScript для управления документами на основе данных" и sigma.js, "легкая библиотека JavaScript с открытым исходным кодом для рисования графиков, используя элемент холста HTML".

Ответ 2

Насколько мне известно, существует несколько проектов js с открытым исходным кодом для работы с визуализацией графиков.

  • JIT, который вы используете.
  • arborjs
  • protovis из Стэнфорда. Кажется здоровым, но он больше не находится под активным развитие.

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

Ответ 3

Оформить заказ netjsongraph.js, простая библиотека javascript, основанная на D3, которая использует NetJSON, который специально разработан для сетевого программного обеспечения.

Смотрите демонстрационный пример netjsongraph.

Надеюсь, это поможет.

Ответ 4

Возможно, вы захотите проверить эту интерактивную библиотеку графиков HTMl5, предоставленную Лабораторией программного обеспечения визуализации данных:

http://datavisualizationsoftwarelab.com/

Этот SDK позволяет создавать широкий диапазон диаграмм:

  • Временные диаграммы
  • Сетевые диаграммы
  • Круговые диаграммы
  • Скоро появятся Geo-диаграммы, диаграммы фаз и диаграммы XML.

Графы представляют собой чистый HTML5, не зависят от других библиотек, поэтому легко интегрируются с любой инфраструктурой JS (например, jQuery). Использует Canvas для рендеринга, имеет полную поддержку multi-touch для навигации, взаимодействия и исследования данных.

Пример сетевой диаграммы:

enter image description here

Графики поставляются с обширными API и настройками, поэтому вы можете контролировать каждый аспект диаграмм.

Ответ 5

Что касается меня - я предпочитаю vis.js, потому что:

  • Сгенерированная сеть является эластичной - автоматически адаптируется к переформатированию сети пользователя.
  • Некоторые полезные функции пользовательского интерфейса интегрированы - например, масштабирование/уменьшение
  • Сеть очень настраиваемая, - края цветов, ширина и т.д.
  • При определении сетевых узлов - нет необходимости указывать координаты X, Y для узлы.
    (Я видел несколько библиотек, где вам нужно определить координаты X, Y для узлы, и это действительно отстой)
  • Не говоря уже о том, что это очень простое использование этого libarary, см. ниже:

Использование:

 // create an array with nodes
  var nodes = new vis.DataSet([
    {id: 1, label: 'Node 1'},
    {id: 2, label: 'Node 2'},
    {id: 3, label: 'Node 3'},
    {id: 4, label: 'Node 4'},
    {id: 5, label: 'Node 5'}
  ]);

  // create an array with edges
  var edges = new vis.DataSet([
    {from: 1, to: 3, width: 1},
    {from: 1, to: 2, width: 6},
    {from: 2, to: 4, width: 1},
    {from: 2, to: 5, width: 3},
    {from: 2, to: 3, width: 1},
  ]);

  // create a network
  var container = document.getElementById('mynetwork');
  var data = {
    nodes: nodes,
    edges: edges
  };
  var options = {};
  var network = new vis.Network(container, data, options);

Демо