Рубрика «visualization»

Дисциплина Computational fluid dynamics(CFD) или, на русском языке, Вычислительная гидродинамика изучает поведение различных потоков, в том числе вихревых. Это и моделирование цунами, и лавовых потоков, и выбрасываемых из жерла вулкана камней вместе с лавой и газами и многое другое. Посмотрим, как можно использовать совместно MantaFlow и ParaView, реализовав на встроенном в MantaFlow языке Python необходимые функции конвертации данных. Как обычно, исходный код смотрите в моем GitHub репозитории: MantaFlow-ParaView.

Tambora Volcano Plume Simulation

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

Читать полностью »

Памятка по работе с Canvas API - 1

Доброго времени суток, друзья!

Данная статья представляет собой небольшую подборку примеров работы с Canvas API, к которой удобно обращаться при необходимости вспомнить изученный материал.

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

Для меня это также своего рода промежуточный итог в изучении холста.

Код разбит на отдельные блоки-песочницы, которые для удобства чтения помещены под «кат».

Парочка важных моментов.

Ширину и высоту холста лучше определять с помощью атрибутов:

<canvas width="300" height="300"></canvas>

Если мы хотим, чтобы холстом была вся область просмотра, то делаем следующее:

const width = canvas.width = innerWidth
const height = canvas.height = innerHeight

Холст и двумерный контекст рисования я определяю следующим образом:

const canvas = document.querySelector('canvas')
// не путать с объектом jQuery
const $ = canvas.getContext('2d')

Довольно слов.
Читать полностью »

Для тех, кто не хочет покидать консоль, любит её ascii-графику, появилась утилита для отрисовки графиков из pipe. Под катом анимация и примеры.
Читать полностью »

Данная публикация это начало цикла статей. Если вам интересно, скажите об этом, а если не интересно, цикл на этом и закончится, тогда просто смотрите ниже список необходимого программного обеспечения и примеры.

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

Tambora Volcano, Indonesia

Читать полностью »

Работаем с аудио: загрузка файлов, регулировка звука, прогресс, визуализация - 1

Доброго времени суток, друзья!

Хочу поделиться опытом работы с аудио. Под «аудио» я подразумеваю HTMLAudioElement и Web Audio API.

Что будем делать?

Мы создадим нечто вроде плеера для одного трека (о полноценном проигрывателе — в одной из следующих статей).

Условия:

  • Возможность загрузки файла из любого места на жестком диске как по нажатию кнопки, так и перетаскиванием.
  • Круговой графический и текстовый индикаторы прогресса.
  • Текстовый индикатор громкости звука.
  • Визуализация аудио данных.
  • Управление плеером с помощью клавиатуры.

В сети полно материалов как по HTMLAudioElement, так и по WAAPI, поэтому я сделаю акцент на практической составляющей. Кроме аудио, мы будем работать с drag-drop и canvas.

Без дальнейших предисловий…
Читать полностью »

Визуализация больших графов для самых маленьких - 1
Что делать, если вам нужно нарисовать граф, но попавшиеся под руку инструменты рисуют какой-то комок волос или вовсе пожирают всю оперативную память и вешают систему? За последние пару лет работы с большими графами (сотни миллионов вершин и рёбер) я испробовал много инструментов и подходов, и почти не находил достойных обзоров. Поэтому теперь пишу такой обзор сам.
Читать полностью »

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

Sampler

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

Код доступен на гитхабе. Инструкции по установке — для Linux, macOS и (экспериментально) Windows.

Читать полностью »

Перевод подготовлен для студентов курса «Прикладная аналитика на R».

Иерархическая кластеризация категориальных данных в R - 1


Это была моя первая попытка выполнить кластеризацию клиентов на основе реальных данных, и она дала мне ценный опыт. В Интернете есть множество статей о кластеризации с использованием численных переменных, однако найти решения для категориальных данных, работа с которыми несколько сложнее, оказалось не так просто. Методы кластеризации категориальных данных еще только разрабатываются, и в другом посте я собираюсь попробовать еще один.
Читать полностью »

Анализ результатов 2018 Kaggle ML & DS Survey - 1

Kaggle — известная платформа для проведения соревнований по машинному обучению на которой количество зарегистрированных пользователей перевалило за 2.5 миллиона. В соревнованиях участвуют тысячи data scientist из разных стран, и Kaggle стал интересоваться тем, что из себя представляет аудитория. В октябре 2018 года был организован уже второй опрос и на него ответило 23859 людей из 147 стран.

В опросе было несколько десятков вопросов на самые разные темы: пол и возраст, образование и сфера работы, опыт и навыки, используемые языки программирования и софт и многое другое.
Но Kaggle — не просто площадка для соревнований, там также можно публиковать исследования данных или решения соревнований (они называются кернелы и похожи на Jupyter Notebook), поэтому датасет с результатами опроса был выложен в открытый доступ, и было организовано соревнование на лучшее исследование этих данных. Я тоже принимал участие и пусть денежный приз не получил, но мой кернел занял шестое место по количеству голосов. Я хотел бы поделиться результатами моего анализа.

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

Большая часть графиков и анализа взята из моего кернела (желающие могут там увидеть код на Python) но есть и новые идеи.

Читать полностью »

D3.js — это JavaScript библотека для манипулирования документами на основе входных данных. Angular — фреймворк, который может похвастаться высокой производительностью привязки данных.

Ниже я рассмотрю один хороший подход по использованию всей этой мощи. От симуляций D3 до SVG-инъекций и использования синтаксиса шаблонизатора.

image
Демо: положительные числа до 300 соединенные со своими делителями.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js