Создание визуальных элементов Power BI с помощью Python

Это руководство поможет вам приступить к созданию визуальных элементов с данными Python в Power BI Desktop. Вы используете несколько доступных вариантов и возможностей для создания визуальных отчетов с помощью Python, pandas и библиотеки Matplotlib.

Необходимые компоненты

Чтобы выполнить скрипты Python в Power BI Desktop , выполните следующие действия.

  • Установите Python на локальном компьютере.

  • Включите скрипты Python в Power BI Desktop.

  • Установите библиотеки Python pandas и Matplotlib.

  • Импортируйте следующий скрипт Python в Power BI Desktop:

    import pandas as pd 
    df = pd.DataFrame({ 
        'Fname':['Harry','Sally','Paul','Abe','June','Mike','Tom'], 
        'Age':[21,34,42,18,24,80,22], 
        'Weight': [180, 130, 200, 140, 176, 142, 210], 
        'Gender':['M','F','M','M','F','M','M'], 
        'State':['Washington','Oregon','California','Washington','Nevada','Texas','Nevada'],
        'Children':[4,1,2,3,0,2,0],
        'Pets':[3,2,2,5,0,1,5] 
    }) 
    print (df) 
    

Создание визуального элемента Python в Power BI Desktop

  1. После импорта скрипта Python выберите значок визуального элемента Python в области визуализаций Power BI Desktop.

    Screenshot that shows the Python option in Visualizations.

  2. В появившемся диалоговом окне "Включить визуальные элементы скрипта" нажмите кнопку "Включить".

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

    Screenshot that shows the Python script editor.

  3. Перетащите поля "Возраст", "Дети", "Fname", "Пол", "Домашние животные", "Состояние" и "Вес" в раздел "Значения", где он говорит "Добавить поля данных".

    Screenshot that shows Drag to Add data fields here.

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

    • Редактор создает кадр данных набора данных с добавленными полями.
    • Агрегат по умолчанию не суммируется.
    • Как и визуальные элементы таблицы, поля группируются, и повторяющиеся строки отображаются только один раз.
  4. С помощью кадра данных, автоматически созданного выбранными полями, можно написать скрипт Python, который приводит к созданию диаграммы на устройстве Python по умолчанию. По завершении скрипта выберите значок запуска в строке заголовка редактора скриптов Python, чтобы запустить скрипт и создать визуальный элемент.

    Screenshot that shows the Python script editor with initial comments.

Советы

  • Скрипт Python может использовать только поля, добавленные в раздел "Значения ". Вы можете добавлять или удалять поля во время работы с скриптом Python. Power BI Desktop автоматически обнаруживает изменения полей. При выборе или удалении полей из раздела "Значения" поддержка кода в редакторе скриптов Python автоматически создается или удаляется.

  • В некоторых случаях может потребоваться, чтобы автоматическое группирование не выполнялось, или может потребоваться, чтобы все строки отображались, включая повторяющиеся. В таких случаях можно добавить в набор данных поле индекса, которое приводит к тому, что все строки будут считаться уникальными и предотвращают группирование.

  • Вы можете получить доступ к столбцам в наборе данных с помощью их имен. Например, вы можете кодировать dataset["Age"] в скрипте Python для доступа к полю возраста.

  • Power BI Desktop повторяет визуальный элемент при выборе "Запуск" в строке заголовка редактора скриптов Python или при изменении данных из-за обновления данных, фильтрации или выделения.

  • При запуске скрипта Python, который приводит к ошибке, визуальный элемент Python не отображается, а на холсте отображается сообщение об ошибке. Дополнительные сведения об ошибке см. в сообщении.

  • Чтобы получить большее представление визуализаций, можно свести к минимуму редактор скриптов Python.

Создать точечную диаграмму

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

  1. В редакторе скриптов Python в разделе "Вставьте или введите код скрипта" здесь, введите следующий код:

    import matplotlib.pyplot as plt 
    dataset.plot(kind='scatter', x='Age', y='Weight', color='red')
    plt.show() 
    

    Теперь область редактора скриптов Python должна выглядеть следующим образом:

    Screenshot that shows the Python script editor with commands.

    Код импортирует библиотеку Matplotlib, которая отображает и создает визуальный элемент.

  2. Нажмите кнопку "Выполнить сценарий", чтобы создать следующий точечную диаграмму в визуальном элементе Python.

    Screenshot that shows the scatter plot visualization generated from the Python script.

Создание графика с несколькими столбцами

Создайте график для каждого человека, который показывает их количество детей и домашних животных.

  1. В разделе "Вставьте или введите код скрипта здесь", удалите или закомментируйте предыдущий код и введите следующий код Python:

    import matplotlib.pyplot as plt 
    ax = plt.gca() 
    dataset.plot(kind='line',x='Fname',y='Children',ax=ax) 
    dataset.plot(kind='line',x='Fname',y='Pets', color='red', ax=ax) 
    plt.show() 
    
  2. Нажмите кнопку "Выполнить", чтобы создать следующий график строк с несколькими столбцами:

    Screenshot that shows a line plot with multiple columns from the Python script.

Создание диаграммы линейчатой диаграммы

Создайте диаграмму полосы для каждого человека.

  1. В разделе "Вставьте или введите код скрипта здесь", удалите или закомментируйте предыдущий код и введите следующий код Python:

    import matplotlib.pyplot as plt 
    dataset.plot(kind='bar',x='Fname',y='Age') 
    plt.show() 
    
  2. Нажмите кнопку "Выполнить", чтобы создать следующую диаграмму на панели:

    Screenshot that shows a bar plot from the Python script.

Ограничения

Визуальные элементы Python в Power BI Desktop имеют следующие ограничения:

  • Данные, которые визуальный элемент Python использует для построения, ограничен 150 000 строк. Если выбрано более 150 000 строк, используются только первые 150 000 строк, а на изображении отображается сообщение. Входные данные также имеют ограничение в 250 МБ.

  • Если входной набор данных визуального элемента Python содержит столбец, содержащий строковое значение до 32 766 символов, это значение усечено.

  • Все визуальные элементы Python отображаются в разрешении 72 DPI.

  • Если визуальное вычисление Python превышает пять минут, время выполнения завершается ошибкой.

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

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

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

  • На холсте отображается только устройство python по умолчанию. Избегайте явного использования другого устройства отображения Python.

  • Визуальные элементы Python не поддерживают переименование входных столбцов. Столбцы ссылаются на их исходные имена во время выполнения скрипта.

Безопасность

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

Лицензирование

Визуальные элементы Python требуют лицензии Power BI Pro или Premium на пользователя (PPU) для отображения в отчетах, обновлении, фильтрации и перекрестном фильтрации. Пользователи бесплатной версии Power BI могут использовать только плитки, к которым им предоставлен общий доступ в рабочих областях Premium.

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

Создание визуальных элементов Python в Power BI Desktop Создание отчетов служба Power BI с помощью визуальных элементов Python Просмотр визуальных элементов Python в отчетах
Гостевой (Power BI embedded) Поддерживается Не поддерживается Поддерживается только в емкости Premium или Azure
Неуправляемый клиент (домен не проверен) Поддерживается Не поддерживается Не поддерживается
Управляемый клиент с бесплатной лицензией Поддерживается Не поддерживается Поддерживается только в емкости Premium
Управляемый клиент с лицензией Pro или PPU Поддерживается Поддерживаемые Поддерживается

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

В этом руководстве практически не поцарапывается поверхность параметров и возможностей для создания визуальных отчетов с помощью Python, pandas и библиотеки Matplotlib. Дополнительные сведения см. на следующих ресурсах:

Дополнительные сведения о Python в Power BI см. в следующем разделе: