Добро пожаловать.

(4212) 24-24-29
г. Хабаровск,
ул. Ким Ю Чена, д. 38,
оф. 203.
studio@khvweb.com
211-028-011
Рады видеть Вас в блоге нашей студии! Здесь мы копим нужную, а иногда просто интересную информацию о создании сайтов. Категории:
Статьи
Новости Интернета
Новости студии
Обзоры
Публикации


Главная » Блог » Новости Интернета

Bash-скрипт для искрографиков



Искрографик (англ. sparkline) — это термин, который придумал Эдвард Тафти для обозначения миниатюрных (word-sized), но информационно-плотных графиков. Они показывают общую картину там, где нет места для размещения нормальных графиков с осями координат. Особенно полезными могут быть в таких областях как финансы и трейдинг, спортивные события, научный и медицинский анализ, системное администрирование.



Зак Холман (Zach Holman) из Github написал shell-скрипт Spark, который строит инфографику простой командой spark прямо из шелла (достаточно добавить скрипт куда-нибудь в $PATH).

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

> spark 0 30 55 80 33 150
▁▂▃▅▂▇ 


Или указать любой источник данных. Например, вот искрографик землетрясений с магнитудой более 1,0 за последние 24 часа с официального сайта.

› curl http://earthquake.usgs.gov/earthquakes/catalogs/eqs1day-M1.txt --silent | 
  sed '1d' |
  cut -d, -f9 |
  tr "\n" ',' |
  sed 's/ //g' |
  spark
  ▅▆▂▃▂▂▂▅▂▂▅▇▂▂▂▃▆▆▆▅▃▂▂▂▁▂▂▆▁▃▂▂▂▂▃▂▆▂▂▂▁▂▂▃▂▂▃
  ▂▂▃▂▂▁▂▂▅▂▂▆▆▅▃▆


Другие примеры. Проcмотр количества коммитов в репозиторий на github, по автору.

› git shortlog -s |
      cut -f1 |
      tr "\n" ',' |
      sed 's/ //g' |
      spark
  ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▁▁▁▁▁▁▁▁▂▁▁▅▁▂▁▁▁▂▁▁▁▁▁▁▁▁▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁


Визуализация кода. Количество знаков в каждой строчке самого скрипта spark, без учёта пустых строчек.

awk '{ print length($0) }' spark |
  grep -Ev 0 |
  tr "\n" ',' |
  spark
  ▁▁▁▁▅▁▇▁▁▅▁▁▁▁▁▂▂▁▃▃▁▁▃▁▃▁▂▁▁▂▂▅▂▃▂▃▃▁▆▃▃▃▁▇▁▁▂▂▂▇▅▁▂▂▁▇▁▃▁▇
  ▁▂▁▇▁▁▆▂▁▇▁▂▁▁▂▅▁▂▁▆▇▇▂▁▂▁▁▁▂▂▁▅▁▂▁▁▃▁▃▁▁▁▃▂▂▂▁▁▅▂▁▁▁▁▂▂▁▁▁▂▂


Другие интересные примеры использования spark см. здесь.

Порт на Python
Порт на Си

Комментарии