Обновить
68.14

Визуализация данных *

Облекаем данные в красивую оболочку

Сначала показывать
Порог рейтинга
Уровень сложности

DataTalks #2: Визуализация данных

Время на прочтение2 мин
Охват и читатели21K
Вторая встреча сообщества DataTalks была посвящена визуализации данных – одному из самых важных и сильных инструментов в руках аналитиков. Ведь именно от того, как представлены результаты исследовательской работы, зависят решения и выводы заказчика. Помимо этого, визуализация помогает проводить предварительный анализ данных и быстро находить новые взаимосвязи.
Под катом вы найдете записи выступлений представителей компаний Wargaming, Ambitious Suits Consulting, Targetprocess, А2 Консалтинг и интернет-портала TUT.BY. Докладчики поделились опытом наглядного и информативного представления данных.
Сама встреча традиционно прошла «под танком», в главном офисе компании СООО «Гейм Стрим», минского офиса разработки Wargaming.
image
Читать дальше →

Новое в Wolfram Language: функция TimelinePlot для создания временной шкалы

Время на прочтение2 мин
Охват и читатели10K
Несколько лет назад мы создали сайт, посвященный хронологии возникновения и развития различных систематизированных данных и вычисляемых знаний, которые вы можете посмотреть онлайн. Я написал код, который размещает события вдоль временной шкалы, а затем наши дизайнеры провели серьёзную работу касательно дизайна получаемого материала (шрифты, заголовки, цвета и тому подобное) и довели качество до коммерческого уровня.



В общем, в прошлом году мы добавили функцию NumberLinePlot в Wolfram Language для визуализации точек, областей и неравенств. Как только пользователи начали работать с NumberLinePlot, мы начали получать просьбы о введении подобной функции, но с датами и временем, поэтому мы решили, что пришло время для TimelinePlot.
Читать дальше →

Создание полноценных приложений на Max 7. Часть 1 — Постановка задачи, визуальное программирование

Время на прочтение17 мин
Охват и читатели29K
При решении задач визуализации информации, очевидно, возникает вопрос о практической реализации задуманного. Данный цикл статей посвящен процессу проектирования приложений с помощью визуального программирования в Max 7 от компании Cycling '74. Начнем изучение вопроса, от простого к сложному. Пройдем путь от любительской заготовки до полноценного «однофайлового» приложения (standalone .exe).

Уровень: легкий
Читать дальше →

Имитационная модель логистического центра

Время на прочтение7 мин
Охват и читатели15K
Предлагаю вниманию хабрапользователей небольшую статью, описывающую практическую сторону применения такой области, как имитационное моделирование.

Постановка задачи (описание процесса)


В логистический центр по согласованному с поставщиком календарю поставок прибывает известное количество товаров одного типа. При переполнении склада заявка на поставку товаров заведомо отменяется. Товар поступает, хранится и передается в розничную точку продаж в упаковках по 8 шт. По прибытию машину встречает сотрудник центра (кладовщик), проверяет наличие необходимой сопроводительной документации, актов соответствия/качества, первичной бухгалтерской документации и сопровождает машину в зону разгрузки.

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

Комплектовщики при помощи погрузочного оборудования (электрический погрузчик) комплектуют в зоне отгрузки поставку в розничную точку продаж. Комплектация проводится при достижении остатка товара в розничной точке продаж точки восполнения запаса (точки перезаказа).

После комплектации стандартной партии отгрузки товар передается в точку розничных продаж для реализации.
Необходимо разработать модель представленного процесса для дальнейшего проведения оптимизационных экспериментов (например, определения точки перезаказа при условии отсутствия нулевого остатка в розничной точке продаж).
Читать дальше →

Поиск взаимосвязей на примере Нефть-Рубль

Время на прочтение2 мин
Охват и читатели137K
Одна из базовых задач анализа данных — поиск взаимосвязи двух величин. Здесь я хочу показать пример поиска связи между ценой нефти и курсом рубля.

image

Во-первых надо определить, имеет ли вообще задача смысл. Почему нефть и рубль должны/могут быть взаимосвязаны? Вкратце, модель такая: экспортёры продают нефть за доллары, а затем продают доллары, чтобы получить рубли для расчётов внутри страны. Механизм крайне упрощён, надо учитывать объёмы добычи-продажи, что эскортируют не только нефть, не всегда экспортёры продают доллары, на курс валют влияет ЦБ интервенциями и т.д. И тем не менее, будем считать, что модель более-менее рабочая, то есть, что существуют фундаментальные причины для взаимосвязи цены нефти и курса рубля.
Читать дальше →

3D-системы — подборка отличных способов накосячить с контентом

Время на прочтение7 мин
Охват и читатели19K


3D-системы используются для визуализации инженерных решений (типа обучения операторов АЭС, мониторинга там же), в нефтегазовой геологоразведке (туда идут самые дорогие иммерсионные системы), для демонстрации различных товаров (от кастомных дизайнов салонов автомобилей до типа укладки товара в грузовиках), для обучения ремонтников (можно разобрать двигатель Боинга), в медицине для обучения, а также для отработки эвакуаций и ЧС на разных ответственных объектах.

Главная проблема подготовки контента — это то, что на рынке много компаний, которые говорят «Мы умеем это делать», но не имеют своего железа по факту. Без двухнедельного тестирования, без чёткого понимания ограничений железа и просто знания особенных грабель — это не «умеем и можем», а «хотим, но не получится».
Читать дальше →

Интерактивная карта торгового центра на HTML5 canvas

Время на прочтение11 мин
Охват и читатели37K

Введение


Заказчиком была поставлена следующая задача – показывать на картах торговых центров статистику по посещаемости магазинов, использованию эскалаторов, лифтов и коридоров. Карту нужно уметь размечать — указывать точки, где показывать статистику и какую конкретно статистику. И, естественно, показывать эту статистику для выбранного периода времени и фильтров. Откуда берутся и где хранятся данные – отдельная большая тема, за скобками данной статьи.

Раз плюнуть, скажете вы – берём векторную карту торгового центра в svg и дополняем её данными. Красиво, современно, быстро. Даже есть готовые решения типа jVectorMap.

Только вот векторных карт нужных торговых центров нет, есть только те картинки, что предоставлены владельцами центров. Абсолютно разные по стилистике и наполнению. А большое количество центров (порядка 300) не позволяет перерисовать их в вектора быстро и дёшево. Да и добавление новых торговых центров потребует дополнительной работы.

Поэтому было решено использовать HTML5 canvas и для разметки карты, и для показа данных.

Выбор фреймворка


Работать напрямую с canvas API не очень удобно, но уже понапридумана куча инструментов для облегчения работы. Требования к фреймворку в нашем случае:
  1. Объектная модель поверх canvas API.
  2. Способность отрисовывать и масштабировать картинку.
  3. Интерактивность:
    • возможность манипуляции объектами на этапе разметки карты,
    • возможность масштабирования и перемещения по карте.
  4. Возможность экспорта/импорта размеченных объектов.
  5. Наличие детализированных событий.
  6. Высокая скорость отрисовки.

Под рассмотрение попали fabric.js, EaselJS, Raphaël, Paper.js и Processing.js.
Всем требованиям удовлетворяет fabric.js. Учитывая имеющийся небольшой опыт работы с ним, было решено взять его за основу. Далее в примерах использовалась версия 1.4.4.

Читать дальше →

Визуальная линейная аппроксимация с помощью Gnuplot

Время на прочтение2 мин
Охват и читатели17K
Говорят, что нелинейная аппроксимация — это искусство, но и с обычной линейной дело, бывает, обстоит не просто.

image

Многие, наверно, помнят, что самый простой и довольно точный метод построения прямых МНК — это «прозрачной линейкой на глазок». Раньше, когда считали на калькуляторах, этот метод позволял экономить многие часы монотонных вычислений, но сейчас для заведомо линейных процессов это уже не актуально, аппроксимацию умеет мгновенно считать и рисовать даже Excel.

Однако при решении реальных задач часто приходится иметь дело с процессами, у которых модель неизвестна. В таких случаях бывает разумно строить кусочно-линейные аппроксимации. И вот тут, когда точных критериев построения просто не существует — метод «прозрачной линейки», основанный на «искусстве аппроксимации» (по простому — чуйке), опять становится актуальным.
Читать дальше →

Машинное обучение — 2. Нелинейная регрессия и численная оптимизация

Время на прочтение4 мин
Охват и читатели26K
Прошел месяц с появления моей первой статьи на Хабре и 20 дней с момента появления второй статьи про линейную регрессию. Статистика по просмотрам и целевым действиям аудитории копится, и именно она послужила отправной точкой для данной статьи. В ней мы коротко рассмотрим пример нелинейной регрессии (а именно, экспоненциальной) и с ее помощью построим модель конверсии, выделив среди пользователей две группы.

Когда известно, что случайная величина y зависит от чего-то (например, от времени или от другой случайной величины x) линейно, т.е. по закону y(x)= Ax+b, то применяется линейная регрессия (так в прошлой статье мы строили зависимость числа регистраций от числа просмотров). Для линейной регрессии коэффициенты A и b вычисляются по известным формулам. В случае регрессии другого вида, например, экспоненциальной, для того чтобы определить неизвестные параметры, необходимо решить соответствующую оптимизационную задачу: а именно, в рамках метода наименьших квадратов (МНК) задачу нахождения минимума суммы квадратов (y(xi) — yi)2.

Итак, вот данные, которые будем использовать в качестве примера. Пики посещаемости (ряд Views, красный пунктир) приходятся на моменты выхода статей. Второй ряд данных (Regs, с множителем 100) показывает число читателей, выполнивших после прочтения определенное действие (регистрацию и скачивание Mathcad Express – с его помощью, к слову, вы сможете повторить все расчеты этой и предыдущих статей). Все картинки — это скриншоты Mathcad Express, а файл с расчетами вы можете взять здесь.


Читать дальше →

DICOM Viewer изнутри. Воксельный рендер

Время на прочтение9 мин
Охват и читатели95K
Добрый день, уважаемое хабра-сообщество!

Сегодня мне бы хотелось пролить свет на одну из самых неосвещённых тематик на хабре. Речь пойдёт о визуализаторе медицинских радиологических изображений или DICOM Viewer'е. Планируется написать несколько статей, в которых поговорим об основных возможностях DICOM Viewer'а — в том числе возможности воксельного рендера, 3D, 4D, рассмотрим его устройство, поддержку протокола DICOM и др. В этой статье я расскажу о воксельном рендере и его устройстве. Всем заинтересовавшимся добро пожаловать под кат.


Читать дальше →

Визуализируй это

Время на прочтение10 мин
Охват и читатели84K
Несколько лет назад я делал сайт о рыбалке и публиковал на нём карту окресностей города, отмечая интересные места. Я так увлёкся картами, что и сегодня занимаюсь дизайном геосервисов, а на досуге экспериментирую с картографическими визуализациями. Недавно я визуализировал статистику работы московского велопроката, а ранее опубликовал высотную модель города в виде разноцветной сетки улиц.

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


Дома в центре Москвы разного цвета в зависимости от площади здания.
Данные: © Участники OpenStreetMap


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

Я задумал собрать что знаю про картографические визуализации и рассказать об этом. В итоге, у меня получился онлайн-курс «Визуализация геоданных»  —  серия мини-лекций об общих принципах и инструментах для работы с геоданными. К каждой части я собрал ссылки на дополнительные материалы и примеры рабочих файлов, чтобы можно было погрузиться в детали и попробовать что-то сделать самостоятельно. Этот пост собран из материалов курса.
Читать дальше →

Гибридные приложения в Qt на примере использования D3.js

Время на прочтение6 мин
Охват и читатели30K
D3 — мощная JavaScript библиотека для визуализации данных. На мой взгляд — просто рай для web-разработчика, казалось бы недоступный для Qt-программиста. Но гибкость фреймворка Qt позволяет интегрировать web-frontend в толстый клиент с помощью механизма Qt Web Bridge. Такие приложения получили наименование гибридные (Qt Hybrid Apps).

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

На скриншоте ниже изображен виджет Dependency Wheel (Круг Зависимостей), отрисовка которого осуществляется с помощью D3.js а управление данными и отображением — с помощью Qt. При нахождении указателя над соответствующей дугой её взаимосвязи «подсвечиваются», а остальные становятся полупрозначными. Данный виджет можно использовать для визуализации различного рода зависимостей (например библиотек).

В отличии от оригинального JS решения диаграмма динамически изменяет размер под размер виджета, а данные устанавливаются на стороне Qt, а не с помощью загрузки JSON-файла.

Статья больше ориентирована на Qt-программистов, но также может быть интересна и JS программистам.


Читать дальше →

Машинное обучение — 1. Корреляция и регрессия. Пример: конверсия посетителей сайта

Время на прочтение3 мин
Охват и читатели41K
Как и обещал, начинаю цикл статей по «машинному обучению». Эта будет посвящена таким понятиям из статистики, как корреляция случайных величин и линейная регрессия. Рассмотрим, как реальные данные, так и модельные (симуляцию Монте-Карло).

Часть 1. Реальные данные


Чтобы было интереснее, рассказ построен на примерах, причем в качестве данных (и в этой, и в следующих, статьях) я буду стараться брать статистику прямо отсюда, с Хабра. А именно, неделю назад я написал свою первую статью на Хабре (про Mathcad Express, в котором и будем все считать). И вот теперь статистику по ее просмотрам за 10 дней и предлагаю в качестве исходных данных. На графике это ряд Views, синяя линия. Второй ряд данных (Regs, с коэффициентом 100) показывает число читателей, выполнивших после прочтения определенное действие (регистрацию и скачивание дистрибутива Mathcad Prime).


Читать дальше →

Ближайшие события

Оформление научных результатов: интеграция LaTeX и Gnuplot

Время на прочтение6 мин
Охват и читатели46K
«Если ваш единственный инструмент — молоток, то каждая проблема становится похожей на гвоздь»

Абрахам Маслоу


Введение


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

И вот, ты на 100% использовал возможности посетившей тебя «эврики», закончил основную работу и пришла пора опубликовать свои результаты в журнале, доложить их на конференции, да и просто порадовать своего научного руководителя/консультанта красивым отчетом. И ты приступаешь к мучительной фазе оформления статьи/доклада/отчета. И насколько мучительной будет эта фаза, зависит от того, какие инструменты ты решил использовать для этой работы.

Вспоминаю времена, когда молодым и глупым аспирантом, я писал первый вариант кандидатского «кирпича», предназначенный для тщательного «вычитывания» мной и моим научным руководителем. Тогда я не знал о формате EPS, а поэтому экспортировал графики, построенные в Maple в *.bmp-растр и вручную… обводил их в MS Visio для последующей вставки в Word. Были и другие, не менее топорные глупости. Не удивительно, что тогда я проклял всё, и дал себе слово следующую диссертацию писать совершенно по другому.

Путем последовательных итераций, на сегодняшний день я пришел к такому вот решению:



И настало время отдать накопленный опыт людям. Интересующимся, добро пожаловать под кат.
Читать дальше →

Возможное использование виртуальности для создания программ в будущем

Время на прочтение7 мин
Охват и читатели9.5K
Я верю, что программисты могут работать более продуктивно в виртуальной реальности (ВР). Почему? Во-первых, программист сможет работать, будучи окружённым трёхмерной средой разработки вместо двумерных мониторов. Во-вторых, взаимодействие с ВР более естественно и свободно, чем работа с мышью и клавиатурой.

Я опишу преимущества ВР, два уже существующих прототипа устройств, которые могут помочь программистам, и что ожидает ВР в области программирования.
Читать дальше →

Отображение молекулярных орбиталей с помощью языка Wolfram Language (Mathematica)

Время на прочтение2 мин
Охват и читатели9.2K

Перевод поста Jason B. "Plotting electronic orbitals using Mathematica".
Выражаю благодарность за помощь в переводе участнику сообщества ВКонтакте Русскоязычной поддержки Wolfram Mathematica Курбану Магомедову.
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, а также дополнительные материалы, можно здесь.


Химикам часто бывает полезно изображение молекулярных орбиталей (МО). Они используются для описания волновой функции электронов в атомах или молекулах. Как правило, это результаты различных квантово-химических или квантово-физических расчетов, производимых в специализированном программном обеспечении для расчета МО, которые представлены в виде cube-файла, разработанного Gaussian. Эти файлы содержат объемные данные для построения орбиталей на трехмерной сетке.

Существует множество приложений для просмотра cube-файлов, такие как VMD или GaussView, но я хотел бы воспользоваться возможностями Mathematica, которые она дает для совмещения и создания различных типов графических объектов, а также автоматизации всего процесса, что в итоге позволило эффективно создавать кадры для видео, в котором можно наблюдать изменение МО.


Читать дальше →

День открытых данных 21 февраля пройдет по всему миру

Время на прочтение1 мин
Охват и читатели3K


По всему миру 21 февраля пройдет Open Data Day — opendataday.org
это огромный хакатон-марафон и событие для всех кто работает открытыми данными или хочет узнать о них больше.

Мы, Информационная культура и OKF Russia, планируем провести мероприятие по открытым данным в Москве в этот день.
В ближайшее время напишем о том как и в каком формате его проведем.

Если Вы планируете провести хакатон по открытым данным, то этот день очень подходит для такого события.
Читать дальше →

Панорамный пассивный радиолокатор

Время на прочтение3 мин
Охват и читатели36K
В этой статье я хочу рассказать об очередном эксперименте с пассивным панорамным радиолокатором. Предыдущие эксперименты описаны в статьях «Радиотелескоп» и «СВЧ пассивный радиотеплолокатор в диапазоне 10 ГГц».

Первые панорамные радиоснимки были получены с помощью сетчатой параболической антенны диаметром 1,8 м установленной стационарно.

Следующий радиолокатор не был панорамным, т.е. он мог работать только в азимутальной плоскости. Зато он позволил поэкспериментировать, как в плане механики и электроники, так и в плане использования антенн малого диаметра. Сначала было не понятно – будут ли эффективны зеркала диаметром около 50 см при приёме собственных шумов объектов?

После первых экспериментов сразу стало ясно, что это вполне возможно и меня посетила мысль сделать небольшой мобильный панорамный радиолокатор с антенной диаметром 50 см.
Читать дальше →

27 лет арктических льдов за одну минуту

Время на прочтение2 мин
Охват и читатели27K


Потрясающее видео на днях опубликовало NOAA Climate — или по-русски Национальное управление океанических и атмосферных исследований климата, на котором были совмещены данные об арктических льда, собранные на протяжении последних 27 лет — между 1987 и 2014 годом. Красочная визуализация позволяет оценить, как сезонно и из года в год меняется снежный и ледовый покров нашей северной «шапки», а также проследить влияние глобального потепления на возраст ледовых покровов.
Гляциологические подробности

Разработка ПО для лазерного толщинамера на FriendlyARM Smart210

Время на прочтение3 мин
Охват и читатели4.4K
Краткое описание: задача заключается в измерении сечения объекта между двумя движущимися лазерными датчиками, весь расчет происходит на стороне компьютера.

В качестве средства разработки была выбрана Qt в связи с тем, что это кросс-платформенный продукт, а также OpenSource. Qt устанавливалась последняя на тот момент версии 5.4. Первоначальное использование программы предполагалось под Windows OS с сенсорным экраном. Где то на середине пути решили переделать по Smart210.
Подробности