Как сделать срез в power bi

Обновлено: 30.06.2024

Кратко о возможностях Microsoft Power BI

Power BI — достаточно мощная и при этом бесплатная BI-платформа. Microsoft вкладывает много средств в развитие этого продукта, в связи с чем часто выходят обновления, расширяющие ее возможности. Вы можете использовать такие версии программы:

  • Power BI Desktop предназначен для разработки модели данных и отчетов;
  • Power BI Service — онлайн-аналог, который специализируется на мониторинге и анализе готовых отчетов, поэтому возможности конструирования и работы с данными там очень ограничены.

Как правило, десктопная версия используется в качестве конструктора, после чего разработанный файл публикуется в Power BI Service. Для дальнейшей работы скачайте Power BI Desktop по этой ссылке.

Для пользователей Microsoft Windows 10 есть отдельная версия Power BI Desktop, которую вы можете найти, перейдя по этой ссылке.

Откуда можно загружать данные?

Power BI имеет множество встроенных коннекторов к различным сервисам и базам данных, с помощью которых вы в считанные минуты можете загрузить в программу нужный набор данных из различных источников, связать их между собой и построить консолидированные отчеты и диаграммы. На момент написания статьи все доступные коннекторы распределены на четыре группы:

  • Excel;
  • Текстовый или CSV файл;
  • XML;
  • Текст;
  • JSON;
  • Папка
  • PDF;
  • Parquet;
  • Папка SharePoint..
  • Наборы данных Power BI;
  • Потоки данных Power BI;
  • Common Data Service;
  • Dataverse;
  • Потоки данных Power Platform.
  • База данных Microsoft Azure SQL;
  • Azure Synapse Analytics;
  • Azure Analytics Service;
  • Azure для PostgreSQL;
  • Azure Cosmos DB;
  • Azure Data Explorer;
  • Azure Data Lake 1-го и 2-го поколения;
  • Microsoft Azure Marketplace;
  • Microsoft Azure HDInsight;
  • Microsoft Azure HDInsight Spark;
  • HDInsight Interactive Query;
  • Управление затратами Azure;
  • Azur Databricks;
  • Хранилище BLOB-объектов;
  • Табличное хранилище Microsoft Azure;
  • Microsoft Azure DocumentDB;
  • Аналитика временных рядов Azure.
  • Список SharePoint Online;
  • Microsoft Exchange Online;
  • Dynamics 365 (Интернет);
  • Dynamics NAV;
  • Dynamics 365 Business Central;
  • Dynamics 365 Business Central (локальный);
  • Azure DevOps (Boards Only);
  • Azure DevOps Server (Boards Only);
  • Объекты Salesforce;
  • Отчёты Salesforce;
  • Google Analytics;
  • Adobe Analytics;
  • appFigures;
  • Data.World;
  • GitHub;
  • Linkedin Sales Navigator;
  • Marketo;
  • Mixpanel;
  • Planview Enterprice One — PRM;
  • QuickBooks Online;
  • Smatsheet;
  • SparkPost;
  • SweetIQ;
  • Planview Enterprice One — CTM;
  • Twilio;
  • Zendesk;
  • Asana;
  • Assemble Views;
  • Automation Anywhere;
  • Dynamics 365 Customer Insight;
  • Emigo Data Source;
  • Entersoft Business Suite;
  • eWay CRM;
  • FactSet Analytics;
  • Palantir Foundry;
  • Hexagon PPM Smart API;
  • Industrial App Store;
  • Intune Data Warehouse;
  • Projectplace for Power BI;
  • Product Insight;
  • Quick Base;
  • Soft One BI;
  • Spigit;
  • TeamDesk;
  • Webtrends Analytics;
  • Witivio;
  • Рабочая аналитика;
  • Zoho Creator.
  • Интернет;
  • Список SharePoint;
  • Канал OData;
  • Файл Hadoop;
  • Active Directory;
    Microsoft ExChage;
  • Hive LLAP;
  • R скрипт;
  • Скрипт Python;
  • Acteris;
  • Anaplan connector;
  • Solver;
  • BQE Core;
  • Данные и аналитика Bloomberg;
  • Cherwell;
  • Cognite Data Fusion;
  • EQuIS;
  • FHIR;
  • Information Grid;
  • Kognitwin;
  • MicroStrategy for Power BI;
  • Paxata;
  • QubolPresto;
  • Roamler;
  • Schortcut Business Insight;
  • Siteimprove;
  • Starbrus Enterprise;
  • SumTotal;
  • Survay Monkey;
  • Личная аналитика Microsoft Teams;
  • Tenforce;
  • TIBCO;
  • Vena;
  • Vessel Insight;
  • Zuccheti HR Infinity;
  • Jamf Pro;
  • ODBC;
  • OLE DB;
  • R-скрипт;
  • QuickBook Online;
  • Smartsheets;
  • SQL Sentry;
  • Stripe;
  • SweetIQ;
  • Zendesk;
  • Spark;
  • Пустой запрос.

Как видите, в Power BI можно импортировать данные из наиболее известных баз данных и сервисов, используя различные форматы файлов. После загрузки информации из доступных источников в Power BI, перед вами открываются большие возможности по очистке и преобразованию данных, в связи с тем, что в платформе присутствует достаточно мощный ETL функционал. Загружаемые таблицы можно редактировать, а на основе их столбцов создавать расчетные столбцы и меры — таким образом вы можете преобразовать массивы информации в наборы данных со структурой, необходимой для построения визуализации.

Какие визуализации можно построить?

Сформировав набор данных, загруженных из различных источников, вам станут доступны множество встроенных элементов визуализации:

Элементы визуализаций

  • линейчатая диаграмма с накоплением;
  • гистограмма с накоплением;
  • линейчатая диаграмма с группировкой;
  • гистограмма с группировкой;
  • нормированная линейчатая диаграмма;
  • нормированная гистограмма;
  • график;
  • диаграмма с областями;
  • диаграмма с областями с накоплением;
  • линейная гистограмма и гистограмма с накоплением;
  • линейная гистограмма и гистограмма с группировкой;
  • каскадная диаграмма;
  • точечная диаграмма;
  • круговая диаграмма;
  • диаграмма дерева;
  • карта;
  • таблица;
  • матрица;
  • R скрипт;
  • Python скрипт;
  • заполненная карта;
  • воронка;
  • датчик;
  • многострочная карточка;
  • карточка;
  • ключевой показатель эффективности;
  • срез;
  • кольцевой график;
  • визуальный элемент r-script (на данный момент включается в параметрах программы).

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

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

Больше полезных советов по аналитике — в нашей рассылке. Просто заполните форму:

Как загрузить данные в Power BI Desktop?

1. Установите связь с Google Analytics

Получить данные

Жмем Подключить

1.2. Далее Power BI запросит вход в аккаунт Google.

Запросит вход в аккаунт

Выберите аккаунт

1.3. Последний шаг — предоставить разрешение на просмотр данных в нужном представлении Google Analytics.

Предоставить разрешение

Жмем Подключение

Окно Навигатор

В каждом представлении присутствует одинаковый набор параметров и показателей, распределенных на 28 групп:

  • Ad Exchange — информация об эффективности рекламы в Ad Exchange;
  • AdSense — информация об эффективности показов рекламы AdSense;
  • Adwords — информация об эффективности рекламных кампаний в Google Ads;
  • App traking — информация о взаимодействии с мобильным приложением;
  • Audience — демографическая информация о посетителях сайта;
  • Channel grouping — группы каналов трафика;
  • Content Experiments — информация о проводимых экспериментах;
  • Content Grouping — классификация контента сайта по группам;
  • Custom variables or columns — пользовательские параметры и показатели;
  • Google Marketing Platform — информация о эффективности в Google Менеджере рекламы;
  • Ecommerce — данные электронной торговли;
  • Event tracking — информация о событиях;
  • Exceptions — исключения;
  • Geo network — геоданные посетителей;
  • Goal conversion — данные о достижении целей;
  • Internal Search — информация об использовании поиска на сайте;
  • Page Tracking — информация о страницах, которые просмотрели пользователи;
  • Platform or device — операционные системы и устройства пользователей;
  • Related product — связанные сервисы;
  • Session — информация о сеансах;
  • Site speed — скорость загрузки страниц;
  • Social activities — показатели активности в социальных сетях;
  • Social interaction — показатели взаимодействия трафика из социальных сетей;
  • System — информация о системных показателях посетителей;
  • Time — информация о времени совершения событий;
  • Traffic source — информация об источниках трафика;
  • User — информация о пользователях;
  • User timings — длительность сеанса.

В качестве примера давайте выберем следующие параметры: Channel grouping —> Default channel grouping; User —> User Type; Time —> Month of year. В качестве показателей возьмем: Session —> Sessions; Session —> Bounces; Session —> Session duration. Хочу заметить, что в Power BI, как и при любом API запросе в Google Analytics, существует ограничение на максимальное количество запрашиваемых параметров (не более семи) и показателей (не более десяти).

Загрузить выбранные данные в модель данных

Теперь загруженный набор данных отображается в области полей, и мы можем строить на основе этой информации любой доступный визуальный элемент.

Набор данных

2. Как загрузить данные из MySQL?

Чтобы показать функциональность Power BI, я сгенерировал и загрузил в MySQL данные о продажах. Следуя описанным ниже инструкциям, можно подключать любые доступные базы данных и после соединять всю загруженную информацию в одну таблицу или график.

Загрузка данных о продажах из MySQL

База данных MySQL

Учетные данные для доступа в MySQL

Список доступных таблиц

Теперь в модель данных Power BI загружены данные из двух источников: Google Analytics и MySQL.

Загружены данные

3. Как упорядочить данные?

Наиболее удобный способ редактирования данных

Изменить тип данных

4. Как установить связи между таблицами

Для того, чтобы строить визуализацию на основе данных из двух различных источников, необходимо настроить между ними связи. Power BI поддерживает четыре типа связей:

  • многие к одному;
  • один к одному;
  • один ко многим;
  • многие ко многим.
  • channelGroup;
  • yearMonth;
  • userType.

Режим редактирования запроса

Если на этом этапе вы все сделали правильно, модель данных будет состоять из пяти таблиц. Чтобы в этом убедиться, можно посмотреть в область полей либо перейти в режим визуального интерфейса просмотра модели данных (для этого кликните по иконке с изображением связей между таблицами на левой панели Power BI).

Режим визуального интерфейса просмотра

Power BI самостоятельно определил некоторые связи, поэтому модель данных выглядит следующим образом.

Модель данных

Поменять направление кроссфильтрации

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

Создать связь в режиме визуализации

Как в предыдущих примерах, необходимо изменить направление кроссфильтрации на однонаправленную. Теперь модель данных выглядит следующим образом:

Изменить направление кроссфильтрации на однонаправленную

Создание новых связей

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

Модель данных теперь выглядит следующим образом.

5. Как построить визуализацию?

Создать визуализацию

5.2. Далее построим диаграмму, на которой совместим данные из разных источников: из Google Analytics будут отображены данные о количестве сеансов, из MySQL — о количестве продаж.

Линейная гистограмма и гистограмма с накоплением

В результате этих манипуляций в области отчетов будет построена диаграмма следующего вида.

Построенная диаграмма

Как видите, диаграмма сочетает в себе информацию о сеансах и продажах из двух разных источников.

5.3. Дополнительно можно воспользоваться опциями форматирования объектов визуализации, кликнув по иконке с кисточкой:

Опции форматирования объектов визуализации

В результате чего вы можете изменять цвета, размер, шрифт, фон и прочие параметры элемента визуализации.

6. Как настроить фильтры данных?

Для более удобной работы с фильтрами данных следует добавить на рабочий лист три среза.

6.1. Перетащите с помощью мыши в пустое место области отчетов следующие поля:

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

возможность фильтрации данных

Сменить аккаунт Google

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

Изменять параметры

Обновляйте нажатием одной кнопк

Перейдя по ссылке, вы можете скачать файл, приведенный в данной статье.

Как начать работу с Power BI Service?

Как я уже упоминал в начале статьи, помимо обычной стационарной версии, существует онлайн-сервис Power BI. Его функционал не такой обширный, но в целом для онлайн мониторинга основных показателей его вполне достаточно. Откройте Power BI Service перейдя по этой ссылке.

После того, как вы построили нужный вам дашборд в Power BI Desktop, вы можете опубликовать его в Power BI Service.

отанные в Power BI Desktop файлов.

1. Как опубликовать информацию с Power BI Desktop?

Как опубликовать информацию

После чего начинается процесс публикации файла в службе Power BI.

Процесс публикации файла

Файл был успешно опубликован

В опубликованном файле при этом будут сохранены все существующие между таблицами связи.

2. Как настроить автоматическое обновление данных?

Как настроить автоматическое обновление

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

Расписание обновления

В модели Power BI связи важны для передачи фильтров, фильтр распространяется через связи. Однако иногда вы создаете взаимосвязь между двумя таблицами, которая осуществляется пунктирной линией. В этом посте мы объясним вам все, что вам нужно знать о пунктирных или “неактивных” связях, Мы объясним два разных метода взаимодействия с такими связями. Итак, готовы? Давайте приступим.

Почему важны связи в Power BI?

Для начала нам нужно понять, почему связи в Power BI так важны? Связь в реляционных системах баз данных важна для связывания таблиц друг с другом, но в Power BI связи также играют еще одну, более важную роль: фильтрация.

Чтобы понять, как работают связи, давайте проверим этот пример:

У нас есть пример файла Power BI, который получает данные из примера файла AdventureWorksDW Excel, и мы получаем информацию из двух таблиц: FactInternetSales и DimDate. Эти две таблицы НЕ связаны друг с другом в начале.


Теперь давайте создадим простую диаграмму столбцов с SalesAmount из таблицы FactInternetSales и FullDateAlternateKey из таблицы DimDate. Поскольку FullDateAlternateKey является полем даты, Power BI приносит иерархию по умолчанию, и я увижу данные поперечных и продольных срезов на самом высоком уровне иерархии, то есть “Годом”


Но подождите, это не срезы! Здесь показаны те же данные SalesAmount за каждый год с 2005 по 2010 год! Стоимость очень близка к 30 миллионам долларов, что на самом деле является общей суммой продаж в нашем наборе данных. Дело в том, что поле FullDateAlternateKey НЕ фильтрует таблицу FactSalesAmount.

Связь означает фильтрацию

Теперь давайте создадим связь между этими двумя таблицами на основе OrderDateKey в таблице FactInternetSales и DateKey в таблице DimDate;


Вот и все, давайте вернемся к этой же визуализации снова:


Как вы можете видеть тот же визуал, фильтрация на этот раз осуществляется по полю даты. Или, говоря иначе, теперь DimDate может ФИЛЬТРОВАТЬ таблицу FactInternetSales. Все это из-за связей. Без них мы не можем фильтровать данные по таблицам отдельно, вам может понадобиться сделать некоторые DAX-выражения.

Взаимодействие в Power BI означает фильтрацию и возможность делать срезы таблицы другой таблицей.

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

Неактивные связи

Тип связей, который вы видели выше, называется активным (Active). Существует другой тип связей, называемый неактивным (Inactive). Посмотрим, как будет создана неактивная связь. В предыдущем примере мы делали срезы данных по полю OrderDateKey, потому что это было поле, связанное с таблицей DimDate. Теперь предположим, что мы хотим делать срезы данных с помощью ShipDateKey. Очень простой подход заключается в создании другой связи между таблицей DimDate и FactInternetSales, но на этот раз с ShipDateKey. Вот результат:


Как видите, новый тип связей отличается. Это пунктирная линия, в отличие от активной, которая была сплошной линией. Это неактивная связь. У вас может быть только одна активная связь между двумя таблицами. Любые другие связи станут неактивными.

Неактивная связь не проходит фильтрацию. Она ничего не делает сама по себе. Зачастую можно увидеть, что многие люди создают неактивные связи в своей модели, думая, что только неактивные связи сами по себе сделают некоторую фильтрацию. Это не так. Если мы используем FullDateAlternateKey из таблицы DimDate, чтобы сделать срез SalesAmount из таблицы FactInternetSales, на основе какого поля мы делаем фильтрацию? Конечно, поле, которое имеет активную связь. Вот результат этого (который, по-видимому, такой же, как вы видели в предыдущем примере, потому что неактивная связь ничего не делает. Только активные связи проходят фильтрацию);


Неактивные связи не пропускают фильтрацию самостоятельно. Они нуждаются в обработке!

Да, неактивные связи требуют особого подхода к работе. Давайте посмотрим, как это может работать. Мы объясним две процедуры для неактивной связи: Ролевое измерение и метод UseRelationship.

Role-Playing Dimension

Измерение, которое играет роль множества измерений, называется ролевым измерением в терминологии хранилищ данных. В приведенном выше примере DimDate будет играть роль Order Date в некоторых сценариях, роль Date Ship в других сценариях, и иногда роль Due Date в некоторых других случаях. Мы уже объясняли пример использования вычисляемых таблиц в DAX для реализации ролевого измерения, поэтому давайте также рассмотрим его очень быстро.

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

Давайте создадим копию DimDate. Один из способов создания копии - использовать в ней вычисляемую таблицу с функцией ALL DAX;


ALL - это функция, которая дает вам всю таблицу. В этом случае мы создаем копию таблицы DimDate и называем ее ShipDate. Теперь вы можете создать нормальную активную связь между таблицей ShipDate и FactInternetSales (мы удалили неактивную связь из предыдущего раздела);


И теперь, в результате, у вас есть срезы по таблице ShipDate, а также Order Date (или, скажем, таблица DimDate);


Копируйте только небольшие таблицы

Метод ролевого измерения фактически копирует таблицу, и у вас будет вдвое больше потребления памяти. Дополнительное потребление памяти можно игнорировать, если таблица небольшая. Таблица даты - небольшая таблица. Для каждого года она составляет 365 строк, а в течение 20 лет она будет составлять около 7000 строк. Это очень мало по сравнению с таблицей фактов с миллионами строк. Это решение подходит для небольших таблиц. Но не используйте этот метод для больших таблиц. Если у вас есть таблица измерений с 5 миллионами строк и 30 столбцами, тогда метод ролевого измерения означает потребление того же объема пространства в 2-3 раза и более.

Избегайте ролевого измерения, если у вас таблица большого размера. Этот метод хорош только для небольших таблиц.

Функция UseRelationship в DAX

Другим методом обработки неактивных связей является использование функции в DAX, называемой UseRelationship. Эта функция DAX буквально говорит Power BI, что для этого выражения используйте эту связь, даже если она неактивна. Посмотрим, как работает эта функция.

Если мы продолжим тот же пример деления данных по дате Ship Date и предположим, что нет расчетной таблицы даты отправления, мы можем сделать это таким образом; Создайте снова неактивную связь между DimDate и FactInternetSales на основе ShipDateKey.

Мне всегда удавалось создавать параметры раскрывающегося списка в SSRS, которые позволяют пользователю динамически фильтровать свои отчеты на основе одного или нескольких значений, выбранных в раскрывающемся списке из нескольких значений.

Теперь, когда я перехожу в Power BI, я не могу найти никакой документации для достижения той же функциональности.

Я нашел способ превратить слайсер в выпадающий список. Но он позволяет выбрать только 1 значение за раз. Так что мне кажется, что это скорее выпадающий список переключателей.

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

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

Итак, как можно создать отчет, в котором реализован настоящий раскрывающийся список, позволяющий выбрать 1 или более значений для динамической генерации результата в отчете?

Ссылочные ссылки приветствуются, если простой ответ невозможен.

Это стандартная функция в PowerBI

Создайте визуальный элемент среза и, как вы уже обнаружили, установите для него тип раскрывающегося списка, используя перевернутый значок моркови в заголовке среза. По умолчанию раскрывающийся список имеет несколько вариантов выбора. Удерживайте нажатой клавишу [Ctrl], делая несколько выборок. Тем не менее, вы можете контролировать поведение Multi-Select под "кистью". Когда изображение будет активным, щелкните значок кисти под визуализациями, разверните "Элементы управления выделением", и вы увидите несколько вариантов управления поведением слайсера.

В противном случае поведение в SSRS, когда отчет загружается из источников данных с использованием параметров, выбранных пользователями либо в качестве параметров в хранимых процедурах, либо встроенных в динамический SQL, не реплицируется в PowerBI. Это правда, что есть параметры, которые могут быть включены таким образом при обновлении набора данных, но они управляются набором данных, а не отчетом, и не удобны (или неуместны, на самом деле) для просмотра отчетами.


Создание слайсеров в Power BI является одной из наиболее часто используемых функций этого инструмента, но иногда люди сталкиваются с проблемой этой функции, как описал один пользователь:

Таким образом, OP не нашел опцию Orientation, которая определенно усложняет работу. К счастью, есть довольно много доступных решений.

Шаги по созданию слайсеров в Power BI

1. Включить заголовок

  1. Перейти к Зрительные
  2. включить Визуальный заголовок


2. Изменить тип

  1. Идите в верхнюю правую область слайсера.
  2. Изменить тип как Список.

Это руководство поможет вам стать экспертом в Power BI!

3. Выберите визуальный слайсер

  1. Выберите визуальный слайсер.
  2. Переместите столбец, у которого есть имена для фильтрации.




Вывод

Таким образом, в Power BI существует множество способов создания срезов, и каждый метод предназначен для нужд каждого пользователя. Кроме того, это простые шаги, которые может понять любой новичок.

Считаете ли вы эти методы полезными? Как вы создаете срезы в Power BI? Дайте нам знать в комментариях ниже!

Читайте также: