Pull to refresh
  • by relevance
  • by date
  • by rating

Bluff — библиотека для рисования графиков в канвасе

Lumber room
Недавно знакомый дал ссылку на очень неплохую javascript библиотеку для рисования самых разных графиков в канвасе. Называется она Bluff. Ниже немного о ней.
Читать дальше →
Total votes 9: ↑8 and ↓1 +7
Views 231
Comments 3

Программная визуализация схемы локальной сети

.NET *
Sandbox
Сложная локальная сеть с различными подсетями представляет собой разветвленную структуру, которую можно отнести к графу. Компьютеры и маршрутизаторы представляются как узлы графа, а связи между ними – ребра графа.

image

Как же это знание поможет нам отобразить локальную сеть?
Читать дальше →
Total votes 13: ↑9 and ↓4 +5
Views 14K
Comments 7

HowTo: Cacti 0.8.7g + Plugin Architecture 2.9 + Spine 0.8.7g на CentOS 5.5 i386

Configuring Linux *
cacti
Cacti — Веб-приложение которое поможет Вам мониторить состояние вашего сервера, CISCO и всего что может отдавать данные по SNMP протоколу. Вы сможете наблюдать за загрузкой CPU сервера, видеть на графике среднюю загрузку памяти за период времени, количество DNS запросов приходящих на сервер, количество писем (спама) приходящих на почтовый сервер. Сможете мониторить среднюю нагрузку на сеть в рабочие часы и многое другое.

Cacti Plugin Architecture — дополнение для Cacti расширяющее возможности стандартного пакета путем включения функции установки стороних плагинов.

Spine — быстрый и качественный поллер для Cacti написанный на C. Используется взамен стандартного поллера, идущего в стандартной инсталляции Cacti, cmd.php.

Показательная, базовая установка Cacti с прибомбасами на CentOS 5.5 i386. Многие элементы настройки защиты веб-сервера игнорируются, ввиду тестовой инсталляции.Все действия будут выполняться под рутом.
Приступим
Total votes 41: ↑35 and ↓6 +29
Views 14K
Comments 23

NetworkX для удобной работы с сетевыми структурами

Python *

Рассматривается библиотека NetworkX предназначенная для создания, манипуляции и изучения структуры, динамики и функционирования сложных сетевых структур.
Рассмотрены основы использования библиотеки в качестве инструмента обучения, прикладного программирования или научных исследований.
Основой для описания библиотеки служат официальные материалы с сайта.
Рассмотрена версия библиотеки 1.5.
Читать дальше →
Total votes 59: ↑56 and ↓3 +53
Views 63K
Comments 35

Граф отношений пользователей Google+. Gephi

IT-companies
После прочтения статьи Gephi как средство визуализации данных я оказался под сильным впечатление от программы Gephi. На тот момент я занимался генерацией логов активности пользователей в Google+. И меня посетила идея, а может быть сделать граф отношении между участниками соц. сети Google+. После нескольких часов поисков пришел к выводу, что подобных вещей еще не сделано для Gephi. Даже в wiki gephi алгоритма формирования графа для Google+ не предложено. И на волне вдохновения быстренько дописал в приложении LoggenCSG модуль выгрузки лога в файл бд sqlite, который умеет импортировать Gephi. Результаты импорта графа в Gephi мне очень понравились.
Косвенные отношения между пользователями через их активности.
Косвенные отношения между пользователями через их активности.

Прямые связи между пользователями через их активности.
Прямые отношения между пользователями через их активности.
Дальше пойдет описание того как самостоятельно построить подобные графы.
Читать дальше →
Total votes 52: ↑44 and ↓8 +36
Views 6K
Comments 18

Структуры данных, PHP. Часть вторая

PHP *
Translation
Tutorial
Продолжаю совмещать приятное с полезным и переводить. Сегодня речь зайдет о кучах (heaps) и графах. Как обычно, материал скорее подойдет новичкам — большая часть информации, если не вся, уже где-то так или иначе освещалась.

В конце прошлой статьи затрагивались деревья, поэтому начнем с кучи, поскольку между кучей и деревьями есть общие корни. Затем перейдем к графам и реализуем алгоритм Дейкстры.

UPD: Добавил сравнение производительности
Читать дальше →
Total votes 37: ↑29 and ↓8 +21
Views 34K
Comments 18

Графы — sigmajs

Website development *JavaScript *
Привет, уважаемое Хабра сообщество. В один из прекрасных летних дней, позвонил мне мой товарищ, и сказал, что у него есть для меня очень интересная задача. Я люблю интересные задачи. Приехав на следующий день в офис, мы обсудили задачу. Задача, в двух словах, поставлена была следующая: отобразить на браузерном канвасе иерархию ~ 30000 пользователей с зависимостью между ними, плюс должна присутствовать некая анимация, которая в контексте данного поста не существенна, может в будущих, если на то будет время и Ваше одобрение.

Мы ударили по рукам, я сказал, что мне нужно провести «изыскания», так как сфера (JS + Canvas), была для меня была нова, и выяснить насколько развитие браузерных технологий соответствует реалиями поставленной задачи.

Через некоторое, не долгое время, я наткнулся на замечательную библиотеку — sigmajs, на тот момент была версия 0.8.2, если мне не изменят память, которая удовлетворила почти все наши амбициозные потребности.

С тех пор, много воды утекло, появилась версия сигмы 1.0.0, я обрел новый багаж знаний в сфере JS + Canvas и веба в целом. Для тех, кого я заинтриговал, прошу под кат, где будет дан краткий обзор библиотеки — sigmajs.

Читать дальше →
Total votes 34: ↑30 and ↓4 +26
Views 22K
Comments 16

Визуализация npm

JavaScript *Node.JS *
Привет, друзья!

Я просто хотел поделиться с вами своей визуализацией зависимостей пакетов на npm'e. Выглядит это так:

npm visualization

Вы ему говорите имя пакета, он вам в ответ весь граф зависимостей. Затем можно проанализировать кто поддерживает пакеты и какие есть лицензии в графе.

Все исходники доступны здесь: github.com/anvaka/npmgraph.an
Рабочая версия сайта здесь: npm.anvaka.com/#

Увы, Internet Explorer пока не поддерживается, но планирую отловить своих насекомых и починить его в ближайшем будущем.

Надеюсь, кому-нибудь пригодится. Буду рад любым пожеланиям!

P.S: Забавы ради я также сделал визуализацию в 3D, но пока от нее мало толку (кроме забавы).
Total votes 37: ↑35 and ↓2 +33
Views 8.2K
Comments 14

Обзор алгоритмов сжатия графов

Big Data *Mathematics *
Данная работа описывает способы сжатия прежде всего социальных(графы связей между пользователями в социальных сетях) и Web-графов(графы ссылок между сайтами).

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

а) получить список ребер для определенной вершины
б) узнать соединяются ли 2 вершины.
Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Views 16K
Comments 5

Рисуем коммитами на Гитхабе

Entertaining tasks Data visualization GitHub

[Пятничное]


Всегда хотел сделать свой график активности пользовательского профиля на Гитхабе. Например, выкладывать коммиты каждый день так, чтобы через год этот график превратился в какую-нибудь картинку, пусть и с ограничением по размерам в 52×7 квадратиков-пикселей (52 недели в году × 7 дней в неделе).


Проблема была в том, что даже при полной автоматизации процесса всё равно ждать целый год. А тут я почитал документацию Гитхаба и понял, что задача решается проще и более того — за один раз. А значит, надо делать не откладывая. Обычно названия проектам придумывать сложно, но тут оно пришло само. Кай рисовал льдинками, а Герда рисует коммитами!


График коммитов на Гитхабе в виде картинки

Как нарисовать свою картинку коммитами на GitHub
Total votes 91: ↑83 and ↓8 +75
Views 29K
Comments 36

Инфраструктура Twitter: масштаб

High performance *Instant Messaging *MySQL *Twitter API *Hadoop *
Translation

Обзор парка Twitter


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

Наше текущее распределение оборудования показано ниже:


Читать дальше →
Total votes 29: ↑28 and ↓1 +27
Views 13K
Comments 5

Анализ взаимосвязи навыков с помощью графов в R

Data Mining *R *Open data *Data visualization
Sandbox

Интересно, но такая область как профессиональное развитие остается немного в стороне от шума из-за data science. Стартапы в сфере HRtech только начинают наращивать обороты и увеличивать свою долю, замещая традиционный подход в сфере работы с профессионалами или, теми, кто хочет стать профессионалом.


Сфера HRtech очень разнообразна и включает в себя автоматизацию найма сотрудников, развитие и коучинг, автоматизацию внутренних HR процедур, отслеживание рыночных зарплат, трекинг кандидатов, сотрудников и многое другое. Данное исследование помогает с помощью методов анализа данных ответить на вопрос как взаимосвязаны навыки, какие есть специализации, какие навыки более популярны, а какие навыки следует изучить следующим.

Читать дальше →
Total votes 15: ↑14 and ↓1 +13
Views 6.9K
Comments 5

«Рок это жёстко» или я.музыка как граф

Semrush corporate blog Python *Data visualization
КДПВ

Я очень давно пользуюсь яндекс музыкой для поиска «что послушать». Чаще всего, я просто хожу по похожим исполнителям приятных мне групп, однако, этот метод уже давно не даёт результатов. Какое-то время мои потребности закрывало я.радио с фильтром по жанру, но и его репертуар на удивление скуп. Настало время решать проблему глобально, и вот что из этого получилось =)
Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Views 9.4K
Comments 24

Библиотека быстрого поиска путей на графе

Website development *JavaScript *Programming *Game development *Algorithms *

Привет, Друзья!


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


Пример использования на огромном графе:



Поиграться с демо можно здесь


В библиотеке используется мало-известный вариант A* поиска, который называется NBA*. Это двунаправленный поиск, с расслабленными требованиями к функции-эвристике, и очень агрессивным критерием завершения. Не смотря на свою малоизвестность у алгоритма отличная скорость сходимости к оптимальному решению.


Описание разных вариантов A* уже не раз встречалось на хабре. Мне очень понравилось вот это, потому повторяться в этой статье я не буду. Под катом расскажу подробнее почему библиотека работает быстро и о том, как было сделано демо.

Читать дальше →
Total votes 114: ↑112 and ↓2 +110
Views 31K
Comments 53

Бизнес-процессы. Извлечение BPMN-модели из документа. Часть 1

ERP-systems *Project management *Business Models
Sandbox
Современные проекты по оптимизации и автоматизации бизнес-процессов, как правило, предполагают на начальном этапе анализ больших объемов документов Заказчика с целью моделирования на их основе бизнес-процессов «as-is» в сжатые сроки. Перечень анализируемых документов может включать нормативно-правовые акты, отраслевые стандарты, протоколы интервью, регламенты, положения, технические задания и другие корпоративные документы.

Перед аналитиком проекта ставится довольно трудоемкая и, в то же время, рутинная задача, которая в настоящий момент не имеет средств автоматизации. Как показывает анализ современных средств моделирования бизнес-процессов, даже такие известные на рынке приложения как Enterprise Architect, Business Studio, Bizagi Modeler – не имеют механизмов поддержки построения моделей бизнес-процессов по их текстовому описанию.

В статье решается задача Извлечения BPMN‑модели из документа.
Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Views 12K
Comments 2

Генератор больших графов транзакций с паттернами преступной деятельности

Abnormal programming *Python *Big Data *Open data *

Доброго времени суток.


Network

Пару лет назад перед нашей командой (compliance в швейцарском банке) встала очень интересная задача — нужно было сгенерировать большой граф транзакций между клиентами, компаниями и банкоматами, добавить в этот граф паттерны, похожие на паттерны отмывания денег и другой преступной деятельности, а также добавить минимальную информацию об узлах этого графа — имена, адреса, время, и т.д. Разумеется, все данные должны былии быть сгенерированны с нуля, без использования существующих данных клиентов.

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

Читать дальше →
Total votes 11: ↑10 and ↓1 +9
Views 4.4K
Comments 9

How to generate a huge financial graph with money laundering patterns?

Abnormal programming *Python *Big Data *Open data *
image

Couple of years ago my team (compliance in one of Swiss banks) and I had an interesting task to implement — we had to generate a huge random graph of financial transactions between clients, companies and ATMs. Moreover, we wanted this graph to contain some money-laundering and other financial crime patterns alongside with nodes description such as names, addresses, currencies etc. Obviously, all data should be randomly generated from scratch as long as we could not use any real data for obvious reasons.

As a solution we wrote a generator that I’d love to share with you. This article explains why we needed it and how this generator is working, but if you don’t want to read and want to try it on your own here is the code: https://github.com/MGrin/transactions-graph-generator. I hope that our experience will be helpful to any of you.
Read more →
Total votes 3: ↑3 and ↓0 +3
Views 1.9K
Comments 0

Business processes. BPMN model extraction from the document. Part 1

ERP-systems *ECM *Development for Office 365 *Product Management *Business Models
Translation
The modern projects on the optimization and the automation of many business processes, assume, as a rule, that the first step will be the analysis of the large amount of the client’s documents. The purpose of it is the modelling the business processes “as-is” in a very tight schedule. The list of the analyzed documents includes normative legal acts, industry standards, SCRUM user stories, regulations, technical specifications and other corporate documents.

The analyst for the project faces a rather time-consuming task which is at the same time a routine one as well. It doesn’t have many means of automation at present. According to the analysis of modern means of business process modelling, even such well-known applications on the market as Enterprise Architect, ARIS, Bizagi Modeler do not have any support mechanisms for business process model building in their text description.

This article is focused on the BPMN model extraction from the document.
Read more →
Total votes 3: ↑3 and ↓0 +3
Views 1.7K
Comments 0

Визуализация больших графов для самых маленьких

Open Data Science corporate blog Data Mining *Data visualization Machine learning *Artificial Intelligence


Что делать, если вам нужно нарисовать граф, но попавшиеся под руку инструменты рисуют какой-то комок волос или вовсе пожирают всю оперативную память и вешают систему? За последние пару лет работы с большими графами (сотни миллионов вершин и рёбер) я испробовал много инструментов и подходов, и почти не находил достойных обзоров. Поэтому теперь пишу такой обзор сам.
Читать дальше →
Total votes 95: ↑94 and ↓1 +93
Views 41K
Comments 30
1