Как стать автором
Обновить

Эти прекрасные древовидные карты (альтернатива pprint)

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров5.3K
Всего голосов 51: ↑51 и ↓0+51
Комментарии11

Комментарии 11

А самым великолепным практическим приложением такой системы отображения является windirstat который прекрасно показывает что же занимает место.

Мне больше нравится space sniffer. Суть та же, только дизайн поприятнее

TreeMapFs тоже неплох.

На мой взгляд так нагляднее и приятнее.

В линуксе по умолчанию может стоять filelight или baobab. В макосе можно поставить GrandPerspective, она опенсурсная и легковесная

SequoiaView удобнее, или привычнее.

Или SpaceMonger. Правда, lastest freeware version была в 2000 году (1.4.0), но уже тогда была реализована вся необходимая функциональность...

Напомнил мне плагин Grappl для VSCode, где код отображается в виде интерактивного 3D-города. Это тоже удобный способ визуализировать иерархическую структуру данных.

Я когда-то делал древовидную визуализацию метрик проекта. Размер блока — количество строк кода. Цвет — сложность (градиент от зелёного к красному, чем краснее, тем сложнее).

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

Для отрисовки я взял готовую библиотеку jsTreemap. Внешний вид специально подбирал для большей похожести на WinDirStat.

Цикломатическая сложность вместе с прочими метриками раз в день считалась с помощью Source Monitor и экспортировалась в XML. Дальше я его парсил и генерировал страницу.

Абсолютная и относительная сложность это, скорее, режимы отображения.

В режиме относительной сложности блок с наименьшей сложностью зелёный, с наибольшей — красный, а между ними градиент.

В режиме абсолютной сложности блок с нулевой сложностью зелёный, со сложностью 15 и выше — красный, а между ними градиент.

Таким образом, относительная сложность показывает, что чинить в первую очередь, а абсолютная — насколько всё в принципе плохо.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий