2014-01-20 3 views
1

Я ищу для JS Lib, который позволяет пользователю рисовать бинарное дерево: добавить/удалить лист, добавить/удалить родительский узел и т.д.Изобразите бинарное дерево

Я нашел много LIBS но большинство из них предназначено только для визуализации данных (например: d3), а не для рисования из браузера.

Это даже существует?

Спасибо!

+0

Я знаю, что я плохой синдром NIH, но не настолько ли это достаточно тривиально и достаточно весело, чтобы написать его сами? Также вы имеете в виду интерактивное создание дерева или рисование дерева с учетом определения (например, просто вычисление приливной геометрии дерева для визуализации)? – 6502

+0

Я имел в виду первое: интерактивное создание дерева (создание узла, щелчок по кнопке, создание листа, щелчок, добавление листа к листу и т. Д.). – Simon

ответ

0

Посмотрите на существующие вещи, чтобы рисовать графики (дерево представляет собой график):

Pure JavaScript Graphviz equivalent

Вы также можете написать его самостоятельно, опираясь на HTML холст, например:

https://developer.mozilla.org/en-US/docs/HTML/Canvas/Drawing_graphics_with_canvas

+0

Спасибо :) Я предпочел сказать 'tree', потому что для некоторых людей' graph' может показаться «диаграммами». Я знаю, как рисовать на холсте, я просто хотел бы знать, существует ли для этого решение. Не нужно изобретать велосипед! – Simon

+0

Это дерево модели js вещь выглядит хорошо :) –

+0

На самом деле, я не уверен. Похоже, что это пакет nodejs, а не клиентская lib :( – Simon

1

Tree-model-js имеет анимированный пример на главной странице по svg. Вы можете копировать и использовать его.

+0

Действительно интересно, спасибо – Simon

+0

Это хорошо выглядит –

+0

Mmh. Да, визуализация, используемая здесь, производится с использованием d3. Библиотека tree-model lib позволяет манипулировать только структурой данных, а не ее визуализацией. Думаю, я сделаю это сам или воспользуюсь чем-то вроде http://www.jointjs.com/ – Simon

Смежные вопросы