Красота в Tableau — круговая диаграмма с заливкой по слоям
Круговая диаграмма в визуальной аналитике используется достаточно часто. Иногда полезно ее разнообразить — например, использовать нестандартное отображение секторов. Сегодня делаем послойную заливку круга.
Данные
Загружаем в Tableau Desktop / Tableau Public.
Segment,Value
A,20
B,30
C,40
D,10
После того как данные скопированы в Tableau, кликаем правой кнопкой мыши на источник данных и клик на Edit Data Source… Когда откроется Data Source Editor, вставляем следующее:
Path
1
362
Должно появиться сообщение об ошибке, так как никаких сджойненных колонок у нас нет. Но кликаем на Add new join clause, переходим к Create Join Calculation, пишем 1 и клик на OK. Делаем то же самое для правой стороны. Проверьте, что выбран Inner джойн и в итоге видим следующее:
Важно: нам нужно 2 записи для каждой страны, так как мы планируем рисовать линии и использовать уплотнение, чтобы получить больше точек.
Вычисляемые поля
Как только набор данных загружен в Tableau, создаем следующие вычисляемые поля и контейнеры:
Создаем Path (bin)
— Клик правой кнопкой мыши на Path, переходим к Create и выбираем Bins…
— В диалоговом окне Edit Bins: Устанавливаем New field name на Path (bin). Устанавливаем Size of bins на 1.Клик Ok.
Index
(INDEX()-1)
Segment Index
INDEX()
TC_Value
WINDOW_MAX(MAX([Value]))/100*2
TC_Value Label
WINDOW_MAX(MAX([Value]))/100
TC_Starting Point
RUNNING_SUM([TC_Value])-[TC_Value]
X
SIN(RADIANS([Index]))
Y
IF
[Index]<180
AND COS(RADIANS([Index]))+1 >= [TC_Starting Point]
AND COS(RADIANS([Index]))+1 <= [TC_Starting Point]+[TC_Value] THEN
COS(RADIANS([Index]))+1
ELSEIF
[Index]>=180
AND COS(RADIANS([Index]))+1 >= [TC_Starting Point]
AND COS(RADIANS([Index]))+1 < [TC_Starting Point]+[TC_Value] THEN
COS(RADIANS([Index]))+1
ELSE
NULL
END
Теперь создаем визуализацию данных.
Рабочий лист
Создаем первый рабочий лист:
— Меняем Mark Type на Polygon.
— Перетаскиваем Path (bin) на Columns. Клик правой кнопкой мыши на объект и проверяем, что Showing Missing Values отмечено галочкой. Перетаскиваем этот объект на Path Mark.
— Перетаскиваем Segment на Color Mark.
— Перетаскиваем X на Columns. Клик правой кнопкой мыши на этот объект, переходим к Compute Using и выбираем Path (bin).
— Перетаскиваем Y на полку строк/рядов Rows. Клик правой кнопкой мыши на этом объекте, переходим к Compute Using и выбираем Path (bin). Клик правой кнопкой мыши на этом объекте и выбираем Edit Table Calculations.
— В Nested Calculations выбираем TC_Starting Point.
— В Compute Using выбираем Specific Dimensions.
— Проверяем, что отмечен только Segment.
Должно получиться так:
Мы почти у цели, но между слоями есть пробел. Так получилось потому, что мы используем только 360 точек вокруг круга. Чтобы исправить это:
— Меняем объект Path (bin) и понижаем значение Size of bins с 1 на 0.1.
— Изменяем вычисляемое поле Index на (INDEX()-1)/10
Должно получиться так:
Наводим красоту:
— Клик на >11k nulls и выбираем Filter data.
— Скрываем заголовки осей (Axis Headers).
— Скрываем линии сетки (Grid Lines).
— Скрываем нулевые линии (Zero Lines).
— Перетаскиваем TC_Value Label на Tooltip Mark. Клик правой кнопкой мыши на объекте, переходим к Compute Using и выбираем Path (bin).
— Устанавливаем цвет Border Colour на White.
В итоге должно получиться так:
Все получилось 😀
Источник: tableaumagic.com
Мы, компания АНАЛИТИКА ПЛЮС, с 2012 года помогаем нашим клиентам работать с данными — находить полезные инсайты и использовать эту информацию для увеличения прибыли компании.
За это время мы разработали и внедрили решения для компаний из разных сфер бизнеса: ритейл, дистрибуция, логистика, e-commerce, банки и финансы, маркетинг, телеком, производство, логистика, транспорт.
Мы помогаем начать работу с инструментами BI, предоставляем услуги «под ключ» — от сбора данных до установки ПО и предоставления финального интерактивного отчета. И конечно — проводим обучение: наши клиенты ни от кого не зависят и умеют работать со своими данными самостоятельно!
Как мы помогаем в работе с данными? >>
Хотите узнать, как провести анализ и сделать отчеты быстро?
Нам доверяют: