Tutorial: Criar um visual do Power BI com tecnologia R
Como desenvolvedor, você pode criar seus próprios visuais do Power BI. Estes elementos visuais podem ser utilizados por si, pela sua organização ou por terceiros.
Este artigo é um guia passo a passo para criar um visual com tecnologia R para o Power BI.
Neste tutorial, irá aprender a:
- Crie um visual com tecnologia R
- Editar o R-script no Power BI Desktop
- Adicionar bibliotecas ao arquivo de dependências do visual
- Adicionar uma propriedade estática
Pré-requisitos
- Uma conta do Power BI Pro . Inscreva-se para uma avaliação gratuita antes de começar.
- Um motor R. Você pode baixar um gratuitamente de vários locais, incluindo a página de download do Microsoft R Open e o repositório RAN. Para obter mais informações, consulte Criar visuais do Power BI usando R.
- Power BI Desktop.
- Windows PowerShell versão 4 ou posterior para usuários do Windows OU o Terminal para usuários do OSX.
Começar
Prepare alguns dados de exemplo para o visual. Você pode salvar esses valores em um banco de dados do Excel ou em um arquivo .csv e importá-lo para o Power BI Desktop.
N.ºDoMês Unidades Totais 5 2303 2 2319 3 1732 4 1615 5 1427 6 2253 7 1147 8 1515 9 2516 10 3131 11 3170 12 2762 Para criar um visual, abra o PowerShell ou Terminal e execute o seguinte comando:
pbiviz new rVisualSample -t rvisual
Este comando cria uma nova pasta para o visual rVisualSample . A estrutura é baseada no
rvisual
modelo. Ele cria um arquivo chamado script.r na pasta raiz do visual. Este ficheiro contém o R-script que é executado para gerar a imagem quando o visual é renderizado. Pode criar o seu R-script no Power BI Desktop.No diretório recém-criado
rVisualSample
, execute o seguinte comando:pbiviz start
No Power BI Desktop, selecione R script visual:
Atribua dados ao visual do desenvolvedor arrastando as unidades MonthNo e Total para Values para o visual.
Defina o tipo de agregação de Total de unidades como Não resumir.
No editor R-script no Power BI Desktop, digite o seguinte:
plot(dataset)
Este comando cria um gráfico de dispersão usando os valores no modelo semântico como entrada.
Selecione o ícone Executar script para ver o resultado.
Editar o script R
O R-script pode ser modificado para criar outros tipos de elementos visuais. Vamos criar um gráfico de linhas a seguir.
Cole o seguinte código R no editor de scripts 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
Selecione o ícone Executar script para ver o resultado.
Quando o R-script estiver pronto, copie-o para o
script.r
ficheiro localizado no diretório raiz do seu projeto visual.No arquivo capabilities.json, altere o
dataRoles
conjunto de dados : para e defina adataViewMappings
entrada para o conjunto dename
dados.{ "dataRoles": [ { "displayName": "Values", "kind": "GroupingOrMeasure", "name": "dataset" } ], "dataViewMappings": [ { "scriptResult": { "dataInput": { "table": { "rows": { "select": [ { "for": { "in": "dataset" } } ], "dataReductionAlgorithm": { "top": {} } } } }, ... } } ], }
Adicione o seguinte código para suportar o redimensionamento da imagem no arquivo 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"; }
Adicionar bibliotecas ao pacote visual
O corrplot
pacote cria uma exibição gráfica de uma matriz de correlação. Para obter mais informações sobre corrplot
o , consulte Uma introdução ao pacote corrplot.
Adicione a dependência da
corrplot
biblioteca aodependencies.json
arquivo. Veja a seguir um exemplo do conteúdo do ficheiro:{ "cranPackages": [ { "name": "corrplot", "displayName": "corrplot", "url": "https://cran.r-project.org/web/packages/corrplot/" } ] }
Agora você pode começar a usar o pacote corrplot em seu
script.r
arquivo.library(corrplot) corr <- cor(dataset) corrplot(corr, method="circle", order = "hclust")
O resultado do uso
corrplot
do pacote se parece com este exemplo:
Adicionar uma propriedade estática ao painel de propriedades
Agora que temos um visual básico corrplot
, vamos adicionar propriedades ao painel de propriedades que permitem ao usuário alterar a aparência do visual.
Usamos o method
argumento para configurar a forma dos pontos de dados. O script padrão usa um círculo. Modifique seu visual para permitir que o usuário escolha entre várias opções.
Defina uma
object
configuração chamada no arquivo capabilities.json e dê a ele as seguintes propriedades."settings": { "properties": { "method": { "type": { "enumeration": [ { "value": "circle" }, { "value": "square" }, { "value": "ellipse" }, { "value": "number" }, { "value": "shade" }, { "value": "color" }, { "value": "pie" } ] } } } }
Abra o arquivo src/settings.ts . Crie uma
VisualCardSettings
classe com as propriedadesmethod
públicas ,name
displayName
eslices
conforme mostrado na caixa de código abaixo.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]; }
Após essas etapas, você pode alterar a propriedade do visual.
Finalmente, o R-script deve ter uma propriedade padrão. Se o usuário não alterar o valor da propriedade (neste caso, a configuração da forma), o visual usará esse valor.
Para variáveis de tempo de execução R para as propriedades, a convenção de nomenclatura é
<objectname>_<propertyname>
, neste caso,settings_method
.Execute o seguinte R-script:
library(corrplot) corr <- cor(dataset) if (!exists("settings_method")) { settings_method = "circle"; } corrplot(corr, method=settings_method, order = "hclust")
Empacote e importe seu visual
Agora você pode empacotar o visual e importá-lo para qualquer relatório do Power BI.
Preencha as
displayName
informações , , , do autorname
e ,supportUrl
description
eemail
quaisquer outras informações importantes nopbivis.json
arquivo.Se quiser alterar o ícone do visual no painel de visualização, substitua o arquivo .png ícone na pasta de ativos .
A partir do diretório raiz da sua execução visual:
pbiviz package
Para obter mais informações sobre como empacotar seu visual, consulte Empacotando o visual personalizado
Importe o arquivo pbiviz do visual para qualquer relatório do Power BI. Consulte Importar um ficheiro visual do computador local para o Power BI para obter instruções sobre como o fazer.
Seu visual final se parece com o exemplo a seguir: