Skapa visuella Power BI-objekt med Python
Den här självstudien hjälper dig att komma igång med att skapa visuella objekt med Python-data i Power BI Desktop. Du använder några av de många tillgängliga alternativen och funktionerna för att skapa visuella rapporter med hjälp av Python, Pandas och Matplotlib-biblioteket.
Förutsättningar
Arbeta igenom Kör Python-skript i Power BI Desktop för att:
Installera Python på den lokala datorn.
Aktivera Python-skript i Power BI Desktop.
Installera Python-biblioteken pandas och Matplotlib .
Importera följande Python-skript till 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)
Skapa ett visuellt Python-objekt i Power BI Desktop
När du har importerat Python-skriptet väljer du ikonen för visuella Python-objekt i fönstret Visualiseringar i Power BI Desktop.
I dialogrutan Aktivera visuella skript som visas väljer du Aktivera.
En platshållarbild av det visuella Python-objektet visas på rapportarbetsytan och Python-skriptredigeraren visas längst ned i mittrutan.
Dra fälten Ålder, Barn, Fname, Kön, Husdjur, Tillstånd och Vikt till avsnittet Värden där det står Lägg till datafält här.
Baserat på dina val genererar Python-skriptredigeraren följande bindningskod.
- Redigeraren skapar en datauppsättningsdataram med de fält som du lägger till.
- Standardaggregering är Sammanfatta inte.
- Ungefär som i visuella tabellobjekt så grupperas fälten och dubblettrader visas bara en gång.
När dataramen genereras automatiskt av de fält som du har valt kan du skriva ett Python-skript som resulterar i ritning till Python-standardenheten. När skriptet är klart väljer du ikonen Kör i namnlisten för Python-skriptredigeraren för att köra skriptet och generera det visuella objektet.
Tips
Python-skriptet kan bara använda fält som läggs till i avsnittet Värden . Du kan lägga till eller ta bort fält när du arbetar med python-skriptet. Power BI Desktop identifierar automatiskt fältändringar. När du väljer eller tar bort fält från avsnittet Värden genereras eller tas stödkod i Python-skriptredigeraren bort automatiskt.
I vissa fall kanske du inte vill att automatisk gruppering ska ske, eller så kanske du vill att alla rader ska visas, inklusive dubbletter. I sådana fall kan du lägga till ett indexfält i datauppsättningen som gör att alla rader betraktas som unika och förhindrar gruppering.
Du kan komma åt kolumner i datauppsättningen med hjälp av deras namn. Du kan till exempel koda
dataset["Age"]
i Python-skriptet för att få åtkomst till åldersfältet.Power BI Desktop visar det visuella objektet igen när du väljer Kör från namnlisten för Python-skriptredigeraren , eller när en dataändring sker på grund av datauppdatering, filtrering eller markering.
När du kör ett Python-skript som resulterar i ett fel ritas inte det visuella Python-objektet och ett felmeddelande visas på arbetsytan. Om du vill ha felinformation väljer du Se information i meddelandet.
Om du vill få en större vy över visualiseringarna kan du minimera Python-skriptredigeraren.
Skapa ett punktdiagram
Skapa ett punktdiagram för att se om det finns en korrelation mellan ålder och vikt.
I Python-skriptredigeraren under Klistra in eller skriv din skriptkod här anger du den här koden:
import matplotlib.pyplot as plt dataset.plot(kind='scatter', x='Age', y='Weight', color='red') plt.show()
Python-skriptredigerarens fönster bör nu se ut som följande bild:
Koden importerar Matplotlib-biblioteket, som ritar och skapar det visuella objektet.
Välj knappen Kör för att generera följande punktdiagram i det visuella Python-objektet.
Skapa ett linjediagram med flera kolumner
Skapa ett linjediagram för varje person som visar antalet barn och husdjur.
Under Klistra in eller skriv in skriptkoden här tar du bort eller kommenterar ut den tidigare koden och anger följande Python-kod:
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()
Välj knappen Kör för att generera följande raddiagram med flera kolumner:
Skapa ett stapeldiagram
Skapa ett stapeldiagram för varje persons ålder.
Under Klistra in eller skriv in skriptkoden här tar du bort eller kommenterar ut den tidigare koden och anger följande Python-kod:
import matplotlib.pyplot as plt dataset.plot(kind='bar',x='Fname',y='Age') plt.show()
Välj knappen Kör för att generera följande stapeldiagram:
Begränsningar
Visuella Python-objekt i Power BI Desktop har följande begränsningar:
De data som det visuella Python-objektet använder för ritning är begränsade till 150 000 rader. Om fler än 150 000 rader är markerade används endast de översta 150 000 raderna och ett meddelande visas på bilden. Indata har också en gräns på 250 MB.
Om indatauppsättningen för ett visuellt Python-objekt har en kolumn som innehåller ett strängvärde som är längre än 32 766 tecken trunkeras det värdet.
Alla visuella Python-objekt visas med 72 DPI-upplösningar.
Om en visuell Python-beräkning överskrider fem minuter överskrids tidsgränsen för körningen, vilket resulterar i ett fel.
Precis som med andra visuella Power BI Desktop-objekt uppstår ett fel om du väljer datafält från olika tabeller utan någon definierad relation mellan dem.
Visuella Python-objekt uppdateras vid datauppdateringar, filtrering och markeringar. Själva bilden är inte interaktiv.
Visuella Python-objekt svarar på markering av element i andra visuella objekt, men du kan inte välja element i det visuella Python-objektet för att korsfiltrera andra element.
Ritar endast till Standardvisningsenheten i Python visas korrekt på arbetsytan. Undvik att uttryckligen använda en annan Python-visningsenhet.
Visuella Python-objekt har inte stöd för att byta namn på indatakolumner. Kolumner refereras till av sina ursprungliga namn under skriptkörningen.
Säkerhet
Visuella Python-objekt använder Python-skript, som kan innehålla kod som har säkerhets- eller sekretessrisker. När du försöker visa eller interagera med ett visuellt Python-objekt för första gången får du en säkerhetsvarning. Aktivera endast visuella Python-objekt om du litar på författaren och källan, eller när du har granskat och förstått Python-skriptet.
Licensiering
Visuella Python-objekt kräver en Licens för Power BI Pro eller Premium per användare (PPU) för att rendera i rapporter, uppdatera, filtrera och korsfiltrera. Användare av kostnadsfria Power BI kan bara använda paneler som delas med dem på Premium-arbetsytor.
I följande tabell beskrivs funktioner för visuella Python-objekt baserat på licensiering.
Skapa visuella Python-objekt i Power BI Desktop | Skapa usluga Power BI rapporter med visuella Python-objekt | Visa visuella Python-objekt i rapporter | |
---|---|---|---|
Gäst (Power BI Embedded) | Stöds | Stöds inte | Stöds endast i Premium/Azure-kapacitet |
Ohanterad klientorganisation (domänen har inte verifierats) | Stöds | Stöds inte | Stöds inte |
Hanterad klient med kostnadsfri licens | Stöds | Stöds inte | Stöds endast i Premium-kapacitet |
Hanterad klientorganisation med Pro- eller PPU-licens | Stöds | Stöds | Stöds |
Mer information om Power BI Pro-licenser och hur de skiljer sig från kostnadsfria licenser finns i Köpa och tilldela Power BI Pro-användarlicenser.
Relaterat innehåll
I den här självstudien skrapas knappt ytan på alternativen och funktionerna för att skapa visuella rapporter med Python, Pandas och Matplotlib-biblioteket. Mer information finns i följande resurser:
- Dokumentation på Matplotlibs webbplats.
- Självstudie om Matplotlib: En grundläggande guide för att använda Matplotlib med Python
- Självstudie om Matplotlib – Python Matplotlib-bibliotek med exempel
- Pandas API-referens
- Python-visualiseringar i usluga Power BI
- Använda visuella Python-objekt i Power BI
- Omfattande självstudie om Python-skript
Mer information om Python i Power BI finns i: