Samouczek: tworzenie wizualizacji usługi Power BI opartej na języku R
Jako deweloper możesz tworzyć własne wizualizacje usługi Power BI. Te wizualizacje mogą być używane przez Ciebie, Twoją organizację lub przez inne firmy.
Ten artykuł jest przewodnikiem krok po kroku dotyczącym tworzenia wizualizacji opartej na języku R dla usługi Power BI.
Z tego samouczka dowiesz się, jak wykonywać następujące czynności:
- Tworzenie wizualizacji opartej na języku R
- Edytowanie skryptu języka R w programie Power BI Desktop
- Dodawanie bibliotek do pliku zależności wizualizacji
- Dodawanie właściwości statycznej
Wymagania wstępne
- Konto usługi Power BI Pro. Przed rozpoczęciem utwórz konto bezpłatnej wersji próbnej .
- Aparat języka R. Możesz pobrać jeden bezpłatny z wielu lokalizacji, w tym stronę pobierania Microsoft R Open i repozytorium CRAN. Aby uzyskać więcej informacji, zobacz Tworzenie wizualizacji usługi Power BI przy użyciu języka R.
- Power BI Desktop.
- Program Windows PowerShell w wersji 4 lub nowszej dla użytkowników systemu Windows LUB terminal dla użytkowników systemu OSX.
Rozpocznij
Przygotuj przykładowe dane dla wizualizacji. Możesz zapisać te wartości w bazie danych programu Excel lub pliku .csv i zaimportować je do programu Power BI Desktop.
NrMiesiąca Łączna liczba jednostek 1 2303 2 2319 3 1732 100 1615 5 1427 6 2253 7 1147 8 1515 9 2516 10 3131 11 3170 12 2762 Aby utworzyć wizualizację, otwórz program PowerShell lub terminal i uruchom następujące polecenie:
pbiviz new rVisualSample -t rvisual
To polecenie tworzy nowy folder dla wizualizacji rVisualSample . Struktura jest oparta na szablonie
rvisual
. Tworzy plik o nazwie script.r w folderze głównym wizualizacji. Ten plik zawiera skrypt języka R, który jest uruchamiany w celu wygenerowania obrazu po renderowaniu wizualizacji. Skrypt języka R można utworzyć w programie Power BI Desktop.W nowo utworzonym
rVisualSample
katalogu uruchom następujące polecenie:pbiviz start
W programie Power BI Desktop wybierz pozycję Wizualizacja skryptu języka R:
Przypisz dane do wizualizacji dewelopera, przeciągając jednostki MonthNo i Total do wartości wizualizacji.
Ustaw typ agregacji Całkowita liczba jednostek na Nie sumuj.
W edytorze skryptów języka R w programie Power BI Desktop wpisz następujące polecenie:
plot(dataset)
To polecenie tworzy wykres punktowy przy użyciu wartości w modelu semantycznym jako danych wejściowych.
Wybierz ikonę Uruchom skrypt , aby wyświetlić wynik.
Edytowanie skryptu języka R
Skrypt języka R można zmodyfikować w celu utworzenia innych typów wizualizacji. Teraz utwórzmy wykres liniowy.
Wklej następujący kod języka R do edytora skryptów języka R.
x <- dataset[,1] # get the first column from semantic model y <- dataset[,2] # get the second column from semantic model columnNames = colnames(dataset) # get column names plot(x, y, type="n", xlab=columnNames[1], ylab=columnNames[2]) # draw empty plot with axis and labels only lines(x, y, col="green") # draw line plot
Wybierz ikonę Uruchom skrypt , aby wyświetlić wynik.
Gdy skrypt języka R jest gotowy, skopiuj go do
script.r
pliku znajdującego się w katalogu głównym projektu wizualizacji.W pliku capabilities.json zmień parametr :
name
nadataRoles
zestaw danych i ustaw dane wejściowe nadataViewMappings
zestaw danych.{ "dataRoles": [ { "displayName": "Values", "kind": "GroupingOrMeasure", "name": "dataset" } ], "dataViewMappings": [ { "scriptResult": { "dataInput": { "table": { "rows": { "select": [ { "for": { "in": "dataset" } } ], "dataReductionAlgorithm": { "top": {} } } } }, ... } } ], }
Dodaj następujący kod, aby obsługiwać zmianę rozmiaru obrazu w pliku src/visual.ts .
public onResizing(finalViewport: IViewport): void { this.imageDiv.style.height = finalViewport.height + "px"; this.imageDiv.style.width = finalViewport.width + "px"; this.imageElement.style.height = finalViewport.height + "px"; this.imageElement.style.width = finalViewport.width + "px"; }
Dodawanie bibliotek do pakietu wizualnego
Pakiet corrplot
tworzy graficzny wyświetlacz macierzy korelacji. Aby uzyskać więcej informacji na temat corrplot
programu , zobacz Wprowadzenie do pakietu corrplot.
corrplot
Dodaj zależność biblioteki dodependencies.json
pliku. Oto przykład zawartości pliku:{ "cranPackages": [ { "name": "corrplot", "displayName": "corrplot", "url": "https://cran.r-project.org/web/packages/corrplot/" } ] }
Teraz możesz rozpocząć korzystanie z pakietu corrplot w
script.r
pliku.library(corrplot) corr <- cor(dataset) corrplot(corr, method="circle", order = "hclust")
Wynik użycia
corrplot
pakietu wygląda następująco:
Dodawanie właściwości statycznej do okienka właściwości
Teraz, gdy mamy podstawową corrplot
wizualizację, dodajmy właściwości do okienka właściwości, które umożliwiają użytkownikowi zmianę wyglądu i działania wizualizacji.
Używamy argumentu method
do konfigurowania kształtu punktów danych. Skrypt domyślny używa okręgu. Zmodyfikuj wizualizację, aby umożliwić użytkownikowi wybór między kilkoma opcjami.
Zdefiniuj wywołane
object
ustawienia w pliku capabilities.json i nadaj mu następujące właściwości."settings": { "properties": { "method": { "type": { "enumeration": [ { "value": "circle" }, { "value": "square" }, { "value": "ellipse" }, { "value": "number" }, { "value": "shade" }, { "value": "color" }, { "value": "pie" } ] } } } }
Otwórz plik src/settings.ts. Utwórz klasę
VisualCardSettings
z właściwościamimethod
publicznymi ,name
islices
displayName
, jak pokazano w polu kodu.import ItemDropdown = formattingSettings.ItemDropdown; const methodOptions = [ { displayName: "Circle", value: "circle" }, { displayName: "Square", value: "square" }, { displayName: "Ellipse", value: "ellipse" }, { displayName: "Number", value: "number" }, { displayName: "Shade", value: "shade" }, { displayName: "Color", value: "color" }, { displayName: "Pie", value: "pie" } ] class VisualCardSettings extends FormattingSettingsCard { method: FormattingSettingsSlice = new ItemDropdown({ name: "method", displayName: "Method", items: methodOptions, value: methodOptions[0] }); name: string = "settings"; displayName: string = "Settings"; slices: Array<FormattingSettingsSlice> = [this.method]; }
Po wykonaniu tych kroków możesz zmienić właściwość wizualizacji.
Na koniec skrypt języka R musi mieć właściwość domyślną. Jeśli użytkownik nie zmieni wartości właściwości (w tym przypadku ustawienie kształtu), wizualizacja używa tej wartości.
W przypadku zmiennych środowiska uruchomieniowego języka R dla właściwości konwencja nazewnictwa to
<objectname>_<propertyname>
, w tym przypadkusettings_method
.Uruchom następujący skrypt języka R:
library(corrplot) corr <- cor(dataset) if (!exists("settings_method")) { settings_method = "circle"; } corrplot(corr, method=settings_method, order = "hclust")
Pakowanie i importowanie wizualizacji
Teraz możesz spakować wizualizację i zaimportować ją do dowolnego raportu usługi Power BI.
Wypełnij pola
displayName
, ,supportUrl
,description
author'sname
iemail
, i wszelkie inne ważne informacje wpbivis.json
pliku.Jeśli chcesz zmienić ikonę wizualizacji w okienku wizualizacji, zastąp plik icon.png w folderze assets .
Z katalogu głównego wizualizacji uruchom następujące polecenie:
pbiviz package
Aby uzyskać więcej informacji na temat tworzenia pakietów wizualizacji, zobacz Tworzenie pakietów wizualizacji niestandardowej
Zaimportuj plik pbiviz wizualizacji do dowolnego raportu usługi Power BI. Aby uzyskać instrukcje dotyczące tego, jak to zrobić, zobacz Importowanie pliku wizualizacji z komputera lokalnego do usługi Power BI .
Ostateczna wizualizacja wygląda podobnie do poniższego przykładu: