АНАЛИТИКА ПЛЮС
Профессиональные услуги в сфере BI

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index)

30.10.2020

В процессе решения аналитических задач бизнес зачастую сталкивается с проблемой поиска достоверных источников данных: иногда исходные данные доступны лишь в специфичной структуре в файлах Excel, иногда их трудно извлечь из различных систем или сервисов, а иногда все гораздо хуже…

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №1

Если данные доступны в табличном виде в PDF, то их еще можно попробовать извлечь при помощи стандартного коннектора к PDF в Tableau, но что делать если единственный источник данных – график в формате картинки? В таком случае вы можете решить эту задачу при помощи WebPlotDigitizer Web Data Connector (WDC). WDC представляет собой веб-страницу с кодом на JavaScript, которая позволяет извлекать данные из различных источников и загружать их в Tableau. WebPlotDigitizer – WDC, разработанный Денисом Трескуновым, который позволяет автоматизировать процесс оцифровки графиков.

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

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №2

Для начала запустим Tableau Desktop и создадим новый источник данных Web Data Connector.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №3

Затем в адресной строке открывшегося окна введем адрес WebPlotDigitizer: https://dtreskunov.github.io/webplotdigitizer-wdc/

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №4

Далее нажмём Enter. В результате страница обновится и появится интерфейс WDC с примером графика.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №5

Затем перейдем в File -> Load Image в левом верхнем углу интерфейса коннектора и выберем нашу предварительно загруженную картинку с графиком.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №6

После выбора картинки откроется меню с выбором типа графика, я в данном случае оставляю значение «2D (X-Y) Plot» и нажимаю кнопку «Align Axes».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №7

Затем появляется подсказка о том, как именно и в какой последовательности необходимо разметить оси графика. Сначала необходимо отметить минимальную отсечку с подписью на оси X, далее максимальную отсечку с подписью на оси X, далее минимальную отсечку с подписью на оси Y, далее максимальную отсечку с подписью на оси Y. Нажимаем «Proceed».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №8

При наведении курсора мыши на график можно увидеть, что в правой части экрана доступна лупа, позволяющая предельно точно выставить точку. Ставим точку X1 у отметки «2018» на месте зеленой точки на лупе как на скриншоте ниже.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №9

Далее ставим точку X2 у отметки «2020» как на скриншоте ниже.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №10

Затем ставим точку Y1 на отметке «20» по оси Y как на скриншоте ниже.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №11

Далее ставим последнюю точку Y2 на отметке «100» по оси Y как на скриншоте ниже.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №12

От точности установки опорных точек зависит точность оцифровки графика, поэтому не советую промахиваться 😉 Если вы сделали все правильно, то под лупой должна появиться кнопка «Complete!», нажимаем на нее.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №13

В появившемся окне указываем значения точек, для дат используется формат YYYY/MM/DD. Так как в данном примере оси не логарифмические, здесь не стоит ставить галки в чекбоксах «Log Scale». После установки значений как на скриншоте ниже нажимаем на кнопку «OK» в нижней части окна.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №14

Далее переходим к режиму разметки точек на графике. Под лупой расположено небольшое меню, позволяющее выбрать режим разметки (ручной или автоматический) и произвести разметку точек. Нажимаем на кнопку «Automatic Mode».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №15

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

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №16

В открывшемся окне нажмем на кнопку «Color Picker».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №17

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

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №18

Далее нажмем на кнопку «Done».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №19

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

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №20

Мы можем заметить, что почти весь график покрылся точками, включая легенды и подписи.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №21

Давайте попробуем подобрать настройки «Distance», «ΔX» и «ΔY», используя алгоритм извлечения точек «Averaging Window». Для начала укажем значение «2» для параметров «ΔX» и «ΔY» и нажмем на кнопку «Run».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №22

Мы можем заметить, что точек стало больше (3009 вместо 514), но легенды и подписи все еще покрыты точками. Пробуем установить значение «1» параметрам «Distance», «ΔX» и «ΔY» и снова нажимаем кнопку «Run».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №23

Теперь оси графика не покрыты точками кроме единственной ошибочной точки на подписи «2018» на оси X. Воспользуемся прямоугольной маской для исключения лишней точки. Для этого в разделе «Mask» выберем инструмент «Box». Точки временно пропадут с графика чтобы мы могли выделить область, в которой присутствуют все желаемые значения на графике. Выделяем область как на скриншоте ниже.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №24

Снова нажимаем на кнопку «Run» в нижней части экрана.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №25

Теперь на графике расставлено примерно 2590 точек (в вашем случае количество точек может отличаться, это некритично). Если вы хотите экспортировать этот набор данных, то вы можете скопировать значения в окне предпросмотра, нажав на кнопку «View Data», расположенную рядом с кнопкой «Run».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №26

Выйдем из окна предпросмотра, нажав на кнопку «Close», и в левом верхнем меню перейдем в пункт «Data -> Acquire Data».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №27

Затем перейдем в «File -> Return to Tableau».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №28

Tableau Desktop получит данные от WDC, при помощи нажатия на «Update Now» мы можем посмотреть полученные значения.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №29

Теперь мы видим, что наши сведения о датах по непонятным причинам превратились в числа. Изменение типа данных этого поля приводит к ошибке, поэтому оставим это поле в формате Number (decimal), перейдем на лист «Sheet 1» и создадим новое вычисляемое поле «Date».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №30

Опытным путем удалось вычислить, что значение поля даты «Default Dataset, X» — это дата в формате UNIX timestamp в миллисекундах. Чтобы сделать новое поле даты воспользуемся слудующей формулой:

DATEADD(‘second’,INT([Default Dataset, X] / 1000), #1970-01-01#)

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №31

Нажмем «OK», перетащим поле «Date» из панели «Tables» в панель Columns.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №32

В контекстном меню пилюли YEAR(Date) выберем детализацию по дням.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №33

Видим, что даты распознались корректно.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №34

Затем в контекстном меню на поле «Default Dataset, Y» в панели «Tables» переименовываем поле со значением индекса Fear and Greed Index.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №35

Переименованное поле со значением индекса переносим в панель «Rows».

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №36

В контекстном меню этого поля в панели «Rows» настраиваем агрегацию (среднее).

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №37

Таким образом получили непрерывный график как в оригинале с возможностью узнать точное значение индекса на дату.

Извлечение данных из графиков при помощи Tableau Web Data Connector (WDC) на примере анализа индекса страха и жадности (Fear and Greed Index), изображение №38

Если дополнить полученный набор данных новым набором данных с дневными свечами тикера (например CRM (Salesforce Inc.)), то можно создать визуализацию для анализа зависимости стоимости акции и объёма торгов от настроения рынка.

Научиться создавать подобные отчеты и визуализации можно на онлайн-образовательной платформе Академия Аналитики. Там доступно несколько онлайн курсов посвященных Tableau, которые позволят научиться создавать отчеты с самых основ.

Итоги:

  1. При помощи WebPlotDigitizer можно быстро оцифровать графики – извлечь набор данных из точек на графике, а далее этот набор данных можно быстро импортировать в Tableau для дальнейшего анализа. Это удобно если самого набора данных нет, но график на основании этого набора данных есть. Пример из области бизнеса – оцифровка графиков из обзоров аналитических агентств для сравнения показателей вашей компании за период со среднеотраслевыми показателями за аналогичный период.
  2. На примере из области рынка ценных бумаг проанализировали зависимость стоимости акции и объёма торгов по тикеру CRM от индекса страха и жадности (Fear and Greed Index). Tableau позволяет просто и удобно решать задачи, связанные с анализом рынка ценных бумаг.

Автор: Артем Шевченко, АНАЛИТИКА ПЛЮС

x

Этот сайт использует файлы cookies, чтобы облегчить вам пользование нашим веб-сайтом.

Продолжая использовать этот веб-сайт, вы даете согласие на использование файлов cookies.