Путь к Fine BI
191 subscribers
28 photos
48 videos
10 files
14 links
Твой путь к уверенной работе в Fine BI начинается здесь. Подпишись и учись с Vizuators

Практика, инструкции и лайфхаки для разработчиков.

Начни отсюда: https://xn--r1a.website/finebiway/5
По всем вопросам: @viz_help.
Download Telegram
Media is too big
VIEW IN TELEGRAM
🕸 Всем 你 好! Сегодня строим классическую Радарную диаграмму (или паутинный график)

График помогает сравнивать объекты по нескольким показателям в одной визуализации.
Хорошо подходит для анализа сильных и слабых сторон, например, при оценке навыков, продуктивности или характеристик. Мы будем строить «паутинку» на основе данных о качествах музыкальных треков.

Что разберем:
🕸 Подготовку данных — как правильно структурировать информацию для построения
🕸 Форматирование — настройку осей, меток и стилей для лучшей читаемости
🕸 Само построение диаграммы в FineBI

Попробуем вместе наглядно представлять многомерные данные!

#график #практика #радар
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🗺Полное решение Арт-практикума#7: Road Timeline Chart в Fine BI

Друзья, подходит к концу седьмой арт-практикум, и сегодня мы описываем решение нестандартного инструмента для визуализации этапов проектов, истории изменений или любых временных процессов. В путь!

1. Подготовка данных
Шаг 1. Выбираем опцию Formula Column
год
YEAR(${Order Date})

Шаг 2. Выбираем опцию Formula Column
индекс
DATEDIF(DATE(${год},1,1),${Order Date},"D")

Шаг 3. Выбираем опцию Formula Column
доп
SWITCH(${год},2017,0,2018,365,2019,730,2020,1095)

Шаг 4. Выбираем опцию Formula Column
new index
${индекс}+${доп}

2. Создание вычисляемых полей для графика
В настройках компонента создаем следующие калькуляции:
Segment Number
FLOOR(MAX(${Sample_superstore_index_new index})/180)

x
IF(MOD(${Sample_superstore_index_Segment Number},4) = 0,MAX(${Sample_superstore_index_new index})-(180*${Sample_superstore_index_Segment Number}),
MOD(${Sample_superstore_index_Segment Number},4) = 1, 180+SIN(RADIANS(MAX(${Sample_superstore_index_new index})-180))*30,
MOD(${Sample_superstore_index_Segment Number},4) = 2,((${Sample_superstore_index_Segment Number}+1)*180)-MAX(${Sample_superstore_index_new index}),
SIN(RADIANS(MAX(${Sample_superstore_index_new index})-180))*-30)

y
IF(MOD(${Sample_superstore_index_Segment Number},2) = 0,${Sample_superstore_index_Segment Number}*-1,
(-1*${Sample_superstore_index_Segment Number}+COS(RADIANS(MAX(${Sample_superstore_index_new index})-180))))

радиус
SQRT(SUM_AGG(${Sample_superstore_index_Sales}))

3. Построение графика
🎾Выбираем тип графика Custom Chart → Point
🎾Настраиваем оси:
Горизонтальная ось (X): Поле x с агрегацией AVG
Вертикальная ось (Y): Поле y с агрегацией AVG
🎾Настраиваем отображение:
Color: Поле Order Date (формат "год")
Size: Поле радиус (размер 10-15)
Fine-grained: Поле Order Date (формат "год-месяц-день")
🎾Убираем лишние элементы:
Скрываем оси (Axes → Hide)
Убираем сетку (Grid Line → None)
Получается интерактивная временная шкала, где:
Каждая точка представляет событие
Размер точки зависит от показателя Sales
Цвет показывает год события
Расположение точек следует заданной логике


🏁 График готов! На какие данные примените?

#датаарт #артпрактикум #нетривиальные_графики #таймлайн
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Media is too big
VIEW IN TELEGRAM
Альтернативный санкей в Fine BI: что это и зачем?
Встроенный санкей не всегда подходит:
🟣нельзя гибко управлять цветами на разных уровнях;
🟣проблемы с визом при создании нескольких уровней на одной странице;
🟣жесткая структура блоков категорий и подписей, нельзя кастомизировать.
Это особенно критично, когда нужно наглядно показать сложные иерархии.

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

1. Предобработка данных
🟣Выбираем опцию Group Summary
🟣На полку Group размещаем поле Category и Ship Mode, на полку Summary → поле Sales
🟣Выбираем опцию Summary Column. Называем Линия. Summary Field → Sales
Summary method → Descend
🟣Выбираем опцию Formula Column. Называем start_point
IF(AND(${Category}="Furniture",${Ship Mode}="Standard Class"),5,
AND(${Category}="Furniture",${Ship Mode}="Same Day"),5.5,
AND(${Category}="Furniture",${Ship Mode}="Second Class"),6,
AND(${Category}="Furniture",${Ship Mode}="First Class"),6.5,
AND(${Category}="Technology",${Ship Mode}="Standard Class"),11,
AND(${Category}="Technology",${Ship Mode}="Same Day"),11.5,
AND(${Category}="Technology",${Ship Mode}="Second Class"),12,
AND(${Category}="Technology",${Ship Mode}="First Class"),12.5,
AND(${Category}="Office Supplies",${Ship Mode}="Standard Class"),17,
AND(${Category}="Office Supplies",${Ship Mode}="Same Day"),17.5,
AND(${Category}="Office Supplies",${Ship Mode}="Second Class"),18,
18.5)

🟣 Выбираем опцию Formula Column. Называем end_point
IF(AND(${Category}="Furniture",${Ship Mode}="Standard Class"),3,
AND(${Category}="Furniture",${Ship Mode}="Same Day"),9,
AND(${Category}="Furniture",${Ship Mode}="Second Class"),15,
AND(${Category}="Furniture",${Ship Mode}="First Class"),21,
AND(${Category}="Technology",${Ship Mode}="Standard Class"),4,
AND(${Category}="Technology",${Ship Mode}="Same Day"),10,
AND(${Category}="Technology",${Ship Mode}="Second Class"),16,
AND(${Category}="Technology",${Ship Mode}="First Class"),22,
AND(${Category}="Office Supplies",${Ship Mode}="Standard Class"),5,
AND(${Category}="Office Supplies",${Ship Mode}="Same Day"),11,
AND(${Category}="Office Supplies",${Ship Mode}="Second Class"),17,
23)

🟣Выбираем опцию Formula Column. Называем start_point
REPLACE(REPLACE(RANGE(0,48),"[",""),"]","")

🟣 Выбираем опцию Split Field
Select Field → индекс
Split Method → By Separator
Тип разделителя → запятая
Split to row
🟣Удаляем поле индекс. Оно нам больше не понадобится. Новое поле называем индекс-, меняем его формат на Value
🟣Выбираем опцию Formula Column. Называем Path
${индекс-}*0.25-6

2. Создание расчетных полей
Sigmoid
1/(1+POWER(EXP(1),${Sample_superstore_Path}*-1))

curve
${Sample_superstore_start_point}+(${Sample_superstore_end_point}-${Sample_superstore_start_point})*${Sample_superstore_Sigmoid}

для подписи
IF(${Sample_superstore_индекс-}=0,-5,null)

для подписи1
IF(${Sample_superstore_индекс-}=0,-1,null)

Категория
IF(AND(${Sample_superstore_индекс-}=0,${Sample_superstore_Линия}>9),${Sample_superstore_Category},null)

Копируем Линия и Path → Переводим в Dimension (Линия1, Path1).

3. Построение графика
Тип: Custom Chart → Line
Оси:
🟣X: индекс- (агрегация AVG)
🟣Y: curve (агрегация AVG)
Убираем отображение осей для обоих полей.

Graphic Property
На полку Color размещаем поле Линия1. Опция Group Records with Same Value
Size: Sales
Fine Grained: Линия1 + Path1 (Group Records with Same Value)

Подписи
Добавляем на горизонтальной оси два поля (для подписи и для подписи1) как Point.

Label
🟣Для для подписи Категория
🟣Для для подписи1 Sales
Для обоих полей тип графика → Point. Цвет и обводка → Transparent.
Цвет текста: контрастный (например, белый на темном фоне).
Label Location → Inner
Убираем лишнее, Grid line, Partition line.

👍 Если гайд был полезен, поддержите лайками — запишем продолжение про многоуровневые санкеи!

#санки #практика #график
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥63
This media is not supported in your browser
VIEW IN TELEGRAM
🏆Приветствуем Podium Bar Chart в FineBI!

«Подиумные» диаграммы — это столбчатые графики, где первые три позиции выделяются, как на спортивном подиуме (🥇, 🥈, 🥉). Идеально для рейтингов, сравнений и отчетов!

Где его использовать?
🎾Спорт: результаты турниров (топ-3 команды)
🎾Бизнес: рейтинги продаж, топ-3 продукта
🎾Аналитика: лидеры по ВВП, цитируемости, посещаемости

Согласитесь, такой виз эффектен в инфографике. Как же его построить в Файне? Все не так сложно!

1. Подготовка данных
Выбираем Group Summary
🎾Поле Sub_Category → на полку Group
🎾Поле Sales → на полку Summary
Создаем Summary Column
🎾Называем поле: Ранг
🎾Поле Sales → на полку Summary Field
🎾Descend (по убыванию) → на полку Summary Method

2. Вычисления в компоненте
TC_Median
DEF(MEDIAN_AGG(${Sample_superstore_ранг}))


TC_Podium Order
IF(${Sample_superstore_ранг}= 1,${Sample_superstore_TC_Median},
MOD(${Sample_superstore_ранг},2)!=0,FLOOR(${Sample_superstore_TC_Median}+${Sample_superstore_ранг}/2-0.5),
FLOOR(${Sample_superstore_TC_Median}-${Sample_superstore_ранг}/2))


3. Создание графика
TC_Podium Order
🎾Convert to dimension
🎾Переносим на горизонтальную полку.
🎾Убираем отображение названия.
Поле Sub_Category → на горизонтальную полку

Делаем копию поля Ранг, convert to dimension и переносим на горизонтальную полку.
Поле Sales → на вертикальную полку
Sales → на полку Color и на полку Label

4. Финализируем
🎾Настраиваем цвета
🎾Убираем лишние элементы (оси, заголовки)
🎾Настраиваем отступы между столбцами

График готов!

#график #практика #подиум
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
🎨 Открываем Арт-практикум#8 в Fine BI: cтроим эффектный Arc-chart!

Arc-chart (диаграмма дуг) — элегантный способ показать связи и переходы в данных 🌈

Где он применим?
🌺Визуализация связей. Кто с кем общается? Какие товары покупают вместе?
🌺 Анализ потоков. Как пользователи переходят между этапами? Куда уезжают мигранты?
🌺 Сравнение силы связей. Чем толще дуга — тем теснее связь (например, объем торговли между странами).
🌺 Упрощение сложных сетей. Альтернатива графам, когда важны именно парные связи.

Плюсы и минусы
Красиво и наглядно — идеально для презентаций.
Акцент на взаимосвязях — сразу видно ключевые связи.
⚠️Может быть запутанным, если связей слишком много.
⚠️ Не всегда точный.

Есть альтернативы
Sankey Diagram (для потоков с изменяющейся шириной).
Chord Diagram (если хотите круговую визуализацию).
Matrix Diagram (для точных числовых сравнений).

Так что Arc-chart — отличный выбор, когда нужно красиво показать связи, но для сложных данных рассмотрите другие варианты.

И самое интересное
Попробуйте построить Arc-chart на нашем датасете и выложите результат в комментарии. Получится?👍

#датаарт #артпрактикум #нетривиальные_графики #арк
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21
для arc chart.xlsx
8.1 KB
для Арт-практикума#8
🐲 Всем 你 好! А вот и решение Арт-практикума#8 в FineBI, который мы посвятили Arc Chart!

💪Как согнуть данные в дугу?

1. Предобработка данных
Создаем Formula Column с именем индекс:
REPLACE(REPLACE(RANGE(0,180,1),"[",""),"]","")

Разделяем поле индекс:
Split Field → Выбираем поле индекс.
Split Method → By Separator (разделитель — запятая ,).
Split to Row → Получаем новый столбец Index.
Тип данных → Value (числовой).

2. Создание сalculations
Основные параметры дуги:
WC_End Point
DEF(MAX_AGG(${для arc chart_End Point}),${для arc chart_Step})

WC_Escalations
DEF(MAX_AGG(${для arc chart_Escalations}),${для arc chart_Step})
WC_PI

DEF(MAX_AGG(PI()),${для arc chart_Step})

WC_Start Point
DEF(MAX_AGG(${для arc chart_Start Point}),${для arc chart_Step})

WC_Step Size
(${для arc chart_WC_End Point} - ${для arc chart_WC_Start Point}) / 2

Координаты точек дуги:
x (Горизонтальная ось):
COS(${для arc chart_Index} * ${для arc chart_WC_PI} / 180) * ${для arc chart_WC_Step Size} + ${для arc chart_WC_Step Size} + ${Start Point}

y (Вертикальная ось):
SIN(${для arc chart_Index} * ${для arc chart_WC_PI} / 180) * ${для arc chart_WC_Step Size}

Дополнительные поля:
подпись (Метки точек, например, A, B, C...):
SWITCH(${для arc chart_x}, 1, "A", 2, "B", 3, "C", 4, "D", 5, "E")

ноль
0

3. Создание визуализации
Custom ChartLine
Основная дуга:
🔵Горизонтальная ось (X): Поле x → AVG.
🔵Вертикальная ось (Y): Поле y → AVG.
Графическое оформление (Graphic Property - All):
🔵Color → WC_Escalations.
🔵Size → WC_Escalations.
🔵Connect → Копия поля Index (в Dimension) → Group Records with Same Value.
🔵Fine-grained → Поле Step
Метки (точки "ноль"):
🔵Вертикальная ось (Y): Поле ноль → Point.
Настройки точек (Graphic Property - "ноль"):
🔵Color → Прозрачность (Transparency) для заливки и обводки.
🔵Size → 0.
🔵Label → Поле подпись (цвет: белый для темной темы и наоборот).
🔵Label Location → Button.
Убираем лишние элементы:
Скрываем оси, сетку (Grid Line), разделители (Partition Line) и легенду (Legend).

Готово! 🎨
Получаем полукруглую диаграмму с:
🔵настраиваемой толщиной и цветом дуги (WC_Escalations).
🔵метками в ключевых точках (A, B, C...).
🔵чистым дизайном.

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

#датаарт #артпрактикум #нетривиальные_графики #арк
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2
И снова пятница. Попрактикуемся? Открываем Арт-практикум#9 с необычным совмещенным визом в FineBI: Line Chart In Bar Chart
Что означает — линейный график внутри столбчатой диаграммы.

Как читать такой график?
Это гибрид, который объединяет два типа отображения данных:
📊Столбцы (бары) — показывают количественные значения по категориям (например, продажи по месяцам).
📊 Линия — отражает общий тренд (рост, падение, стабильность).

Где пригодится такой виз?
Сравнение категорий — столбцы помогают оценить отдельные значения.
Анализ динамики — линия выявляет тенденцию.
Поиск аномалий — можно увидеть, где фактические значения отклоняются от тренда.

Примеры кейсов
Финансы: годовая выручка компании + помесячная динамика.
Маркетинг: клики по рекламным кампаниям + тренд эффективности.
Продажи: объемы по неделям и общая тенденция.

🛠 Строим на нашем датасете и публикуем в комментариях до вторника!

#датаарт #артпрактикум #нетривиальные_графики #лайнчарт #барчарт
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Привет всем файнбистам! Сегодня будем разбираться с Арт-практикумом#9, где мы успешно совместили два графика в FineBI и преумножили его пользу 👍

Line Chart In Bar Chart. Ну что, отправляемся заполнять столбики линиями 😌 Поехали!

1. Подготовка данных
Калькуляции:
1. LOD_Sales by Year:
DEF(SUM_AGG(${Sample_superstore_Sales}),[YEAR(${Sample_superstore_Order Date}),${Sample_superstore_Segment}]) /
DEF(SUM_AGG(${Sample_superstore_Sales}),YEAR(${Sample_superstore_Order Date}))

2. Columns:
(MAX_AGG(WEEK(${Sample_superstore_Order Date})-1))*MAX_AGG(${Sample_superstore_LOD_Sales by Year})

3. Продажи за неделю:
DEF(SUM_AGG(${Sample_superstore_Sales}),[${Sample_superstore_Segment},YEAR(${Sample_superstore_Order Date}),WEEK(${Sample_superstore_Order Date})])

4. Лучшая неделя:
DEF(MAX_AGG(DEF(SUM_AGG(${Sample_superstore_Sales}),[${Sample_superstore_Segment},YEAR(${Sample_superstore_Order Date}),WEEK(${Sample_superstore_Order Date})])),[YEAR(${Sample_superstore_Order Date}),${Sample_superstore_Segment}])

5. TC_Line Height:
${Sample_superstore_продажи за неделю}/${Sample_superstore_лучшая неделя}

один
1

2. Создание визуализации
Тип графика: Custom Chart → Line + Column
Оси:
Горизонтальная (X):
🔵ColumnsDisplay Range: Min=0
Вертикальная (Y):
🔵Order Date (Year) + Segment
🔵1 (AVG) Column Chart, Display Range: Min=0, Max=1
🔵TC_Line Height (SUM)Area Chart
Детализация:
🔵Для Column и Area добавьте Order Date (Week) на Fine-Grained.
Цвет:
🔵Закрасить столбцы по полю Segment.

3. Удаление шума
Отключите Grid Lines, Axis Labels, Partition Lines.

Как вам такой график и для каких кейсов его лучше использовать? ✍️

#датаарт #артпрактикум #нетривиальные_графики #лайнчарт #барчарт
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
⚡️Друзья, тишина в ленте — мы готовим для вас кое-что мощное!

5 июня приглашаем на оффлайн воркшоп «Внутри FineBI: от формул до визуализаций», где разберем переход с Tableau на FineBI, во всех деталях и нескучно 🔥

Какие темы будут?
🔹 Миграция с Tableau: подводные камни и внезапные плюсы
🔹 Сильные стороны FineBI — в чем он выигрывает
🔹 Разбор формул — как перенести логику из Tableau и улучшить ее
🔹 Визы 1:1 (а иногда и лучше!) — разбираем реальные кейсы
🔹 Кастомные визуализации — выходим за рамки стандартных графиков

Где и когда?
📅 Дата: 5 июня, 10:00–13:00
📍 Место: Prosvet Hall, ул. Валовая, 28, Москва
🚇 Ближайшее метро: Добрынинская, Серпуховская (5 мин), Павелецкая (7 мин)

От нас — как всегда много практики.
🐉 Регистрируйтесь и подходите, будем рады познакомиться поговорить за жизнь Файн. Участие бесплатно.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
🔥 Открываем Арт-практикум#10 в FineBI! Юбилейный)

На воркшопе FineBI в Москве 5 июня мы разбирали необычные графики, и один из самых ярких — Multi-Level Radial Column Chart (многоуровневая радиальная столбчатая диаграмма). Попробуем реализовать его силами нашего мощного файн-сообщества 🤘

Что это за график?
Это гибрид радиальной и столбчатой диаграммы с несколькими уровнями вложенности. Каждый "слой" данных отображается отдельным кольцом, что позволяет:
Сравнивать категории и подкатегории (например, продажи по регионам → городам → товарам).
Визуализировать иерархию (бюджет компании по отделам → проектам).
Делать дашборды эффектнее — такая диаграмма цепляет внимание!

Где может пригодиться?
🔴Финансы: детализация расходов.
🔴Маркетинг: анализ продаж по регионам и категориям.
🔴Управление проектами: распределение задач по командам.

Красиво и наглядно для сложных данных.
✖️ Не всегда точен — радиальная форма усложняет сравнение длин столбцов.

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

✏️ Кто осмелится повторить? Ждем ваши работы до вторника! Авторам — почет и полезный фидбек.)

#датаарт #артпрактикум #нетривиальные_графики #radial
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🎨 Всем привет! Это решение Арт-практикума#10, который мы посвятили непростому, но эффектному Multi-Level Radial Column Chart

1. Этап предобработки данных
Расчетные поля:
Год
YEAR(${Order Date})

Индекс дня в году
DATEDIF(DATE(${Год},1,1), ${Order Date}, "D")

Формула "1"
1

Формула "0"
0

Преобразования:
Column to Row (первое применение)
В поле Column Field Converted to Row Field добавляем поля 1 и 0
Результат:
🟡Новое поле path (бывшее Column Field)
🟡Новое поле path_d (бывшее Value Field)
Column to Row (второе применение)
В поле Column Field Converted to Row Field добавляем поля Sales и Quantity
Результат:
🟡Новое поле metric_name (бывшее Column Field)
🟡Новое поле metric_value (бывшее Value Field)

2. Переходим на компонент, создаем параметры
🟡Продажи
Тип: Value
Значение по умолчанию: 2
🟡Количество
Тип: Value
Значение по умолчанию: 2
🟡Метрика
Тип: Text
Значение по умолчанию: Sales

3. Калькуляции
Индекс (угол в градусах)
(${Sample_superstore_индекс}-1)*360/365

Продажи за день
DEF(SUM_AGG(${Sample_superstore_Sales}),[DAY(${Sample_superstore_Order Date}),YEAR(${Sample_superstore_Order Date}),MONTH(${Sample_superstore_Order Date})])

Количество за день
DEF(SUM_AGG(${Sample_superstore_Quantity}),[DAY(${Sample_superstore_Order Date}),YEAR(${Sample_superstore_Order Date}),MONTH(${Sample_superstore_Order Date})])

Максимальные продажи за день
DEF(MAX_AGG(DEF(SUM_AGG(${Sample_superstore_Sales}),[DAY(${Sample_superstore_Order Date}),YEAR(${Sample_superstore_Order Date}),MONTH(${Sample_superstore_Order Date})])))

Максимальное количество за день
DEF(MAX_AGG(DEF(SUM_AGG(${Sample_superstore_Quantity}),[DAY(${Sample_superstore_Order Date}),YEAR(${Sample_superstore_Order Date}),MONTH(${Sample_superstore_Order Date})])))

Вспомогательные формулы:
Направление отрисовки (+/-)
IF(${метрика} = "Sales", -1, 1)

Радиус для точки
IF(${Sample_superstore_metric_name}="Sales",
IF(${Sample_superstore_path-d}=0,${Продажи},${Продажи}+${продажи за день}*${+/-}/(${Максимальные за день продажи}*2)),
IF(${path-d}=0,${Количество},${Количество}-${количество за день}*${+/-}/(${Максимальные за день количества}*2)))

Координата X
SIN(RADIANS(${Sample_superstore_index}))*${Sample_superstore_radius}

Координата Y
COS(RADIANS(${Sample_superstore_index}))*${Sample_superstore_radius}

4. Создание визуализации
Тип графика: Custom Chart Line Chart
🔴Ось X: x (агрегация AVG)
🔴Ось Y: y (агрегация AVG)

Graphic Property
metric_name → на полку Color

Соединение точек: path_1 (копия path_d, преобразованная в Dimension)
Переносим на полку Connection. Выбираем Group Records With Same Value
На полку Fine-Grained размещаем поле Order_date в гранулярности Year-Month-Day

5. Фильтры
🔴Для Дашборда создаем Value Filter Component (Drop Down)
🔴Создаем Custom Value list со значениями 1,2,3,4
🔴Привязываем параметр Продажи
🔴Повторяем действия для параметра Количество
Теперь меняя значение на Filter Component, можем менять вид нашей визуализации
🔴Создаем текстовый фильтр вида Text Drop-Down.
На полку Field размещаем поле metric_name и привязываем параметр метрика
🔴Дополнительно размещаем Time_Filter Component Year c полем Order_date

График готов! 💯 Как вам такой подход к показу данных?)

#датаарт #артпрактикум #нетривиальные_графики #radial
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Media is too big
VIEW IN TELEGRAM
🏮 Всем 你 好, друзья! Сегодня мы заставим картинки говорить. Никакого AI, все серьезно. Иллюстрация заговорит... данными.
Речь о Image Drill Down в FineBI: как превращать статичную картинку в интерактивный элемент дашборда 🖼

🔹 Пример из практики у нас будет такой: анализ спроса на билеты в разных секторах арены — чтобы быстро принимать решения по ценообразованию.

Что разберем:
Подготовка «карты» — создаем многоуровневую структуру из изображений (например, схема стадиона → секторы → ряды)
Настройка интерактива — пошаговая сборка drill-down в FineBI

Где еще пригодится — можно адаптировать под планы магазинов, складов, офисов и других пространств.
А вам для каких задач пригодился бы такой подход? ✍️

#график #практика #нетривиальные_графики
Please open Telegram to view this post
VIEW IN TELEGRAM
13🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
📊 График с индикаторами НЕ достижения цели
Bar Chart Menu 8

Такой прием помогает сравнить фактические показатели с целевыми (target) и быстро увидеть отставание.
🔧 Реализуем по шагам:
📍Sub_Category → вертикальная полка
📍Sales → горизонтальная полка
📍Создаем поле 100 000 (target) и переносим на горизонтальную полку (агрегация Average)
📍Выбираем вторую столбиковую диаграмму (100 000), добавляем поле 0 на полку Size
📍Меняем тип визуализации для target на Rectangular Block
📍Настраиваем цвет и обводку для target (например, серый)
📍Для Sales выбираем столбчатую диаграмму, цвет — серый
📍Создаем поле Крест:
IF(SUM_AGG(${Sample_superstore_Sales}) < 100000, "", "")  

( — Unicode-символ, если значение ниже target)

Для Sales в полке label калькуляцию Сумма в текст:
"$" + ROUND(SUM_AGG(${Sample_superstore_Sales}) / 1000, 0) + " K"  

📍Убираем оси для Sales на горизонтальной полке
📍В Component Style отключаем Axis, Grid Line, Partition Line
📍Скрываем Legend

#барчарт #график #barchartmenu
👍8🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🏮Всем 你 好! Для вас новое "блюдо" из Бар-чарт меню: Underlined Labels
Bar Chart Menu 9

Показываем, как компактно и наглядно отобразить данные на бар-чарте. Выносим названия категорий ПОД столбцы, а значения располагаем прямо НА столбцах.

Выбираем график
▫️Custom ChartColumn Chart
▫️Sub-Category → на вертикальную ось
▫️Sales → на горизонтальную ось
▫️Создаем калькуляцию "0" (число 0). Переносим на горизонтальную полку перед полем Sales
Настраиваем подписи категорий
▫️Выбираем график для "0"
▫️Перетаскиваем Sub-Category на Labels
▫️Цвет столбцов "0" → Transparent
▫️Шрифт подписей → черный
▫️Убираем дублирование подписей
▫️На вертикальной оси убираем отображение Sub-Category (т.к. они уже в подчеркнутом виде)
▫️Добавляем значения продаж
▫️Выбираем график для Sales
▫️В Labels добавляем поле Сумма в текст
"$" + ROUND(SUM_AGG(Sales)/1000, 0) + " K"

▫️Настраиваем цвет и размер для поля Sales (10-15)
▫️Сортируем подкатегории по убыванию Sales
+Убираем оси и лишние линии

Как вам? 🔥
#барчарт #график #barchartmenu
🔥63