Обновить
48.78

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

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

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

Что общего у научной визуализации данных и геймдева — обсуждаем в новом подкасте «ITMO Research_»

Время на прочтение8 мин
Охват и читатели2.4K
Это вторая часть интервью с Андреем Карсаковым (kapc3d), к.т.н., старшим научным сотрудником Национального центра когнитивных разработок, доцентом Факультета цифровых трансформаций.

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

Хабрастатистика: как Хабр пережил самоизоляцию

Время на прочтение5 мин
Охват и читатели6.2K
Привет, Хабр.

Заканчивается первая половина 2020 года, можно подвести некоторые статистические итоги, тем более что по понятным причинам они обещают быть интересными. Появились новые темы для обсуждения, многие стали работать из дома, любопытно посмотреть, как это сказалось на количестве статей и их популярности.



Для тех, кому интересно, что получилось, продолжение под катом.
Читать дальше →

Использование микрофона для создания произведений искусства, реагирующих на звук, на Javascript

Время на прочтение5 мин
Охват и читатели4.2K
Несколько приёмов для создания произведений процедурального (генеративного) искусства.

image

Настройка объекта для микрофона – вещь достаточно лёгкая, хоть и сначала может показаться сложной. Не надо волноваться. Даже если вы это не очень понимаете, то и не нужно. Потому что когда всё настроено и работает, вам больше никогда не придётся проделывать это всё снова…
Читать дальше →

Геология XXI века как наука данных о Земле

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

Сразу оговорюсь, что деление на века немного условно. Например, спутниковая интерферометрия используется с конца 1980-х годов, при этом высококачественные данные стали общедоступными только в 2000-х годах. Трехмерные модели тоже отнюдь не новинка, и делали их ну очень давно — ведь и плоская Земля на трех китах вполне себе объемная модель. Так в чем же разница геологии века прежнего и настоящего?



Слева — фрагмент геологической карты США, справа — 3D геологическая модель с интерферограммой на поверхности рельефа по данным радарной спутниковой съемки (на шкале Density Gradient,% является характеристикой неоднородности геологической плотности, а Band Magnitude обозначает разность фаз отраженного сигнала радара для пары разновременных снимков)

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

Сколько инструкций процессора использует компилятор?

Время на прочтение3 мин
Охват и читатели36K
Месяц назад я попытался сосчитать, сколько разных инструкций поддерживается современными процессорами, и насчитал 945 в Ice Lake. Комментаторы затронули интересный вопрос: какая часть всего этого разнообразия реально используется компиляторами? Например, некто Pepijn de Vos в 2016 подсчитал, сколько разных инструкций задействовано в бинарниках у него в /usr/bin, и насчитал 411 — т.е. примерно треть всех инструкций x86_64, существовавших на тот момент, не использовались ни в одной из стандартных программ в его ОС. Другая любопытная его находка — что код для x86_64 на треть состоит из инструкций mov. (В общем-то известно, что одних инструкций mov достаточно, чтобы написать любую программу.)

Я решил развить исследование de Vos, взяв в качестве «эталонного кода» компилятор LLVM/Clang. У него сразу несколько преимуществ перед содержимым /usr/bin неназванной версии неназванной ОС:

  1. С ним удобно работать: это один огромный бинарник, по размеру сопоставимый со всем содержимым /usr/bin среднестатистического линукса;
  2. Он позволяет сравнить разные ISA: на releases.llvm.org/download.html доступны официальные бинарники для x86, ARM, SPARC, MIPS и PowerPC;
  3. Он позволяет отследить исторические тренды: официальные бинарники доступны для всех релизов начиная с 2003;
  4. Наконец, в исследовании компиляторов логично использовать компилятор и в качестве подопытного объекта :-)

Начну со статистики по мартовскому релизу LLVM 10.0:
ISA Размер бинарника Размер секции .text Общее число инструкций Число разных инструкций
AArch64   97 МБ 74 МБ 13,814,975 195
ARMv7A 101 МБ 80 МБ 15,621,010 308
i386 106 МБ 88 МБ 20,138,657 122
PowerPC64LE 108 МБ 89 МБ 17,208,502 288
SPARCv9 129 МБ 105 МБ 19,993,362 122
x86_64 107 МБ 87 МБ 15,281,299 203
В прошлом топике комментаторы упомянули, что самый компактный код у них получается для SPARC. Здесь же видим, что бинарник для AArch64 оказывается на треть меньше что по размеру, что по общему числу инструкций.

А вот распределение по числу инструкций:
Читать дальше →

Как заставить генеративные изображения выглядеть естественно при помощи математических алгоритмов

Время на прочтение8 мин
Охват и читатели8.7K
image

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

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

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

Красивая и подробная геологическая карта Марса, сделанная на Python, GDAL

Время на прочтение9 мин
Охват и читатели12K
image

На этой неделе — творческое переосмысление геологической (или все же ареологической?) карты Марса на основе карты, сделанной USCS. Использовалась те же геологические данные, что и для оригинальной, но было добавлено больше топонимов и подписей, проведен редизайн визуального стиля, а термины из легенды карты упрощены для общего понимания.
Читать дальше →

Визуализация списка женщин-лауреатов Нобелевской премии в виде кристаллов в 3d с использованием Vue, WebGL, three.js

Время на прочтение8 мин
Охват и читатели7.8K
image

Год 1 | вдохновение


В этом месяце я очень долго пыталась определиться с датасетом и идеей для его обработки. Хотя я начала думать о нем еще в мае, по факту законить удалось только через 8 месяцев (черт, я плоха), а описать проект мне удалось еще спустя месяц (оу, я чертовски плоха).

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

Методы компьютерного зрения для решения обратной задачи геофизики

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

Компьютерное зрение занимается поиском и выделением объектов, а обратная задача геофизики заключается в нахождении распределения источников геофизических полей, соответствующего измеренным на поверхности значениям. Что здесь общего и как это могло быть придумано и реализовано задолго до появления первого компьютера? Ведь изложение обсуждаемого метода в публикации 1953 года ссылается на еще более ранние работы 1940-х годов. И что получится, если реализовать программно алгоритмы, придуманные для ручного выполнения (sic!)?


Computer Vision (CV) Solution of Inverse Problems in Geophysics

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

Генеративное искусство: создание треугольников после 3 часов изучения p5.js

Время на прочтение6 мин
Охват и читатели4K
У меня небольшой опыт использования компьютера для творчества и искусства. Когда я начал изучать p5.js, я вдохновился геометрическими рисунками и решил написать код, чтобы создать что-то крутое.

После примерно полутора часов мне удалось получить случайно сформированные треугольники различных цветов.

image
Случайные треугольники

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

Общедоступные данные дистанционного зондирования Земли: как получить и использовать

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

Дистанционное зондирование Земли (ДЗЗ) — наблюдение поверхности Земли наземными, авиационными и космическими средствами, оснащёнными различными видами съемочной аппаратуры [википедия]. Поговорим о возможностях, предоставляемых бесплатными и общедоступными данными. Всего не перечислить, поэтому расскажу только о том, с чем я сам работаю, все примеры кода и картинки мои собственные. Исходный код по ссылкам представлен на языке Python 3 в виде Jupyter Notebooks на GitHub.


Картинка ниже показывает смещение поверхности Земли относительно спутника (красным цветом обозначено смещение вверх и синим — вниз) в результате землетрясения (6.5 баллов) — как видим, горы "подросли" (на 20-30 см) и долины углубились (на 15-20 см). Можно ли это замерить локально? Да, с помощью сети наземных приемников GPS, для которых местоположение можно вычислить с очень высокой точностью, но это дорого и сложно, а точность спутниковых наблюдений уже превосходит наземные. Кстати, показанная интерферограмма вычислена за пару часов на обычном лаптопе с помощью Open Source утилит GMTSAR (фактически, это расширение для знаменитых в области наук о Земле утилит GMT).



Как растут горы — спутниковая интерферограмма землетрясения магнитудой 6.5 баллов в Монте Кристо, Невада, США

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

Моделирование двумерной модели Изинга на языке C++ (с применением графического пакета OpenGL)

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

Модель Изинга


Модель Изинга была введена для понимания природы ферромагнетизма и повлияла на изучение фазовых переходов и критических явлений. Ферромагнетизм описывает появление самопроизвольной намагниченности у ферромагнетиков ниже определенной температуры — точки Кюри. В точке Кюри (узкой области температур) происходит упорядочение, в данном случае, выстраивание магнитных моментов, которое влечет фазовый переход, то есть свойства вещества меняются скачком.
Читать дальше →

Геологическая модель Аризонского кратера, расположенного в пустыне Аризона, США

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

Около 50 тысяч лет назад в Аризонскую пустыню на скорости 12.8 — 20 км/с врезался 50-ти метровый железно-никелевый метеорит. Произошедший взрыв был втрое мощнее взрыва от падения Тунгусского метеорита и образовал кратер диаметром 1.2 км глубиной 229 м. В геологии такая структура носит название импактной. Расположенный в пустыне кратер прекрасно виден на космических снимках (черная "клякса" прямо над кратером — это автостоянка для любознательных туристов, к ней подходит автодорога):


Meteor Crater, Arizona desert, US
Аризонский кратер на карте Google Satellite Map

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

Понимаем планы PostgreSQL-запросов еще удобнее

Время на прочтение4 мин
Охват и читатели22K
Полгода назад мы представили explain.tensor.ru — публичный сервис для разбора и визуализации планов запросов к PostgreSQL.



За прошедшие месяцы мы сделали про него доклад на PGConf.Russia 2020, подготовили обобщающую статью по ускорению SQL-запросов на основе рекомендаций, которые он выдает… но самое главное — собирали ваши отзывы и смотрели за реальными use case.

И теперь готовы рассказать о новых возможностях, которыми вы можете пользоваться.
Читать дальше →

Сравнение спектрограмм для бесплатно доступных данных с гиперспектральных и мультиспектральных спутников

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

Совсем недавно новый гиперспектральный спутник ASI PRISMA открыл доступ к архиву данных с момента запуска в марте 2019 года и, вдобавок, предоставляет возможность заказать съемку на любую интересующую территорию, смотрите PRISMA Mission Selection Все это доступно бесплатно с лимитом в 218 доступных к заказу и скачиванию сцен площадью 30х30 км с панхроматическим разрешением 5м и гиперспектральным разрешением 30м для 239 каналов! Спутник новый, его техническое тестирование только что закончилось и потому практически ничего о нем еще не известно. Давайте сами выясним, чем может быть интересен этот спутник, сравнив его снимки с другими открыто доступными гиперспектральными и мультиспектральными снимками.


Для сравнения спектрограмм выберем территорию в Индонезии — там мне удалось найти пересечение доступных сцен ASI PRISMA и другого гиперспектрального спутника EO-1 HYPERION, в то время как остальные используемые датасеты доступны на всю или почти всю территорию планеты. Итак, мы посмотрим спектрограммы следующих спутниковых миссий и предоставляемых ими наборов данных: ASI PRISMA L2C (30м), EO-1 HYPERION 1T (30м), Sentinel-3 OLCI EFR (300м), Sentinel-2 MSI (10/20/60м), ASTER L1T (15/30/90м), USGS Landsat 8 SR (30м). Для сравнения выбраны три безоблачных участка: густой лес (Wood), соленая вода не слишком близко к берегу (Water) и территория суши без заметной растительности (Land).


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

Рисуем музыку: Coffin dance в Pure Data

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

Программирование и мемы


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

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

В 2020-ом году танец из архивного видео похоронной церемонии агентства Dada awu из Ганы стал самым популярным мемом в России. Сегодня нам предстоит пошагово воссоздать легендарную музыкальную тему Coffin Dance, используя среду алгоритмического описания звука Pure Data.

Влияет ли на наши музыкальные предпочтения пол вокалистов?

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


Привет всем любителям смотреть на бесполезные графики!


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


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


Кажется, это одно из таких утверждений, проверка которых на реальных данных совершенно бесполезна в жизни, но страшно интересна.


Если вы придерживаетесь той же точки зрения — добро пожаловать под кат!

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

Шпаргалка по визуализации данных в Python с помощью Plotly

Время на прочтение62 мин
Охват и читатели406K
Plotly — библиотека для визуализации данных, состоящая из нескольких частей:

  • Front-End на JS
  • Back-End на Python (за основу взята библиотека Seaborn)
  • Back-End на R

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



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

Сколько инструкций в x86?

Время на прочтение1 мин
Охват и читатели25K
vvvphoenix упомянул в своей позавчерашней статье: «Кстати, я пытался найти график роста числа X86 инструкций по годам (или по поколениям). Пока не смог (может, есть у кого?)»

Я решил, что мне это тоже интересно — да настолько, что не жалко потратить выходной день на сведение en.wikipedia.org/wiki/X86_instruction_listings в одну табличку:



Считались различные мнемоники; например, десятки вариантов MOV считались за одну инструкцию.

Таким образом, можно грубо считать, что количество мнемоник в x86 удваивается каждые 13 лет.

Как встроить ColorPicker в JavaScript Гант для изменения цвета задач

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


Привет, меня зовут Женя, и я просто еще один из обитателей JavaScript вселенной, который хочет поделиться с вами интересным опытом в frontend-разработке, а именно как кастомизировать диаграмму Ганта.


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


  • оптимальное распределение ресурсов и нагрузки между сотрудниками
  • мониторинг выполнения задач
  • оценка эффективности и временных рамок проекта

Во многих современных приложениях для управления проектами для решения таких задач используются диаграммы Ганта. И я взялся за реализацию ее функциональности в нашем приложении.


Хотя можно было бы использовать готовый софт, в нашем случае нужно было сильно кастомизировать Гант под нужды проекта. Альтернатива разработки диаграммы с нуля — это слишком накладное и времязатратное мероприятие. Посовещавшись с коллегами, мы решили, что лучше всего найти готовый компонент среди библиотек JavaScript и настроить его под наш проект.

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