Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Microsoft Fabric é um serviço de análise integrado que acelera o tempo de obtenção de insights em armazéns de dados e sistemas de big data. A visualização de dados em blocos de anotações é um recurso fundamental que permite obter informações sobre seus dados, ajudando os usuários a identificar padrões, tendências e valores atípicos com facilidade.
Ao trabalhar com o Apache Spark no Fabric, tem opções integradas para visualizar dados, incluindo recursos de gráfico do notebook do Fabric e acesso a bibliotecas de código aberto populares.
Os blocos de anotações de malha também permitem converter resultados tabulares em gráficos personalizados sem escrever nenhum código, permitindo uma experiência de exploração de dados mais intuitiva e perfeita.
Comando de visualização integrado - função display()
A função de visualização integrada Fabric permite transformar resultados de consulta Apache Spark DataFrames, Pandas DataFrames e SQL em visualizações de dados ricas e interativas.
Usando a função de exibição , você pode renderizar DataFrames PySpark e Scala Spark ou RDDs (Resilient Distributed Datasets) como tabelas ou gráficos dinâmicos.
Você pode especificar a contagem de linhas do dataframe que está sendo renderizado. O valor padrão é 1000. Notebook exibir widget de saída suporta a visualização e o perfilamento de até 10000 linhas de um quadro de dados, no máximo.
Você pode usar a função de filtro na barra de ferramentas global para aplicar regras personalizadas aos seus dados. A condição de filtro é aplicada a uma coluna especificada e os resultados são refletidos nas exibições de tabela e gráfico.
A saída da instrução SQL utiliza o mesmo widget de saída com display() como padrão.
Exibição detalhada de tabela de dataframe
Apoio gratuito à seleção na visualização em tabela
Por padrão, o Modo de Exibição de Tabela é renderizado ao usar o comando display() em um notebook Fabric. A visualização avançada do dataframe oferece uma função de seleção gratuita intuitiva, projetada para aprimorar a experiência de análise de dados, permitindo opções de seleção flexíveis e interativas. Esse recurso permite que os usuários naveguem e explorem dataframes com facilidade de forma eficiente.
Seleção de coluna
- Coluna única: Clique no cabeçalho da coluna para selecionar a coluna inteira.
- Várias colunas: Depois de selecionar uma única coluna, pressione e mantenha pressionada a tecla 'Shift' e, em seguida, clique em outro cabeçalho de coluna para selecionar várias colunas.
Seleção de Linha
- Linha única: Clique no cabeçalho de uma linha para selecionar a linha inteira.
- Várias linhas: Depois de selecionar uma única linha, pressione e mantenha pressionada a tecla 'Shift' e, em seguida, clique em outro cabeçalho de linha para selecionar várias linhas.
Pré-visualização do conteúdo da célula : Pré-visualize o conteúdo de células individuais para obter uma visão rápida e detalhada dos dados sem a necessidade de escrever código adicional.
Resumo da coluna: Obtenha um resumo de cada coluna, incluindo distribuição de dados e estatísticas-chave, para entender rapidamente as características dos dados.
Seleção de área livre: Selecione qualquer segmento contínuo da tabela para obter uma visão geral do total de células selecionadas e dos valores numéricos na área selecionada.
Copiar conteúdo selecionado: Em todos os casos de seleção, você pode copiar rapidamente o conteúdo selecionado usando o atalho 'Ctrl + C'. Os dados selecionados são copiados em formato CSV, facilitando o processamento em outros aplicativos.
Suporte ao perfilamento de dados via painel de inspeção
Você pode criar o perfil do seu dataframe clicando no botão Inspecionar . Ele fornece a distribuição de dados resumidos e mostra as estatísticas de cada coluna.
Cada cartão no painel lateral "Inspecionar" corresponde a uma coluna do dataframe; pode visualizar mais detalhes ao clicar no cartão ou selecionar uma coluna na tabela.
Você pode visualizar os detalhes da célula clicando na célula da tabela. Esse recurso é útil quando o dataframe contém um tipo de cadeia de caracteres longa de conteúdo.
Modo de exibição de gráfico Rich DataFrame aprimorado
A vista de gráfico melhorada no comando display() oferece uma forma mais intuitiva e dinâmica de visualizar os seus dados.
Principais melhorias:
Suporte a vários gráficos: adicione até cinco gráficos em um único widget de saída display() selecionando Novo gráfico, permitindo comparações fáceis entre diferentes colunas.
Recomendações de gráficos inteligentes: obtenha uma lista de gráficos sugeridos com base no seu DataFrame. Escolha editar uma visualização recomendada ou criar um gráfico personalizado do zero.
Personalização flexível: personalize suas visualizações com configurações ajustáveis que se adaptam com base no tipo de gráfico selecionado.
Categoria Definições básicas Descrição Tipo de gráfico A função de exibição suporta uma ampla gama de tipos de gráficos, incluindo gráficos de barras, gráficos de dispersão, gráficos de linhas, tabela dinâmica e muito mais. Título Título O título do gráfico. Título Subtítulo O subtítulo do gráfico com mais descrições. Dados Eixo X Especifique a chave do gráfico. Dados Eixo Y Especifique os valores do gráfico. Legenda Mostrar legenda Ativar/desativar a legenda. Legenda Posição Configure a posição da legenda. Outro Grupo da série Use essa configuração para determinar os grupos para a agregação. Outro Agregação Use esse método para agregar dados em sua visualização. Outro Empilhado Configure o estilo de exibição do resultado. Outro Valores ausentes e NULL Configure como os valores de gráfico ausentes ou NULL são exibidos. Nota
Além disso, você pode especificar o número de linhas exibidas, com uma configuração padrão de 1.000. O widget de saída de display do notebook suporta visualização e análise de perfil de até 10.000 linhas de um DataFrame. Selecione Agregação sobre todos os resultados e, em seguida, selecione Aplicar para aplicar a geração de gráficos a partir de todo o quadro de dados. Um trabalho do Spark é acionado quando a configuração do gráfico é alterada. Pode levar vários minutos para concluir o cálculo e renderizar o gráfico.
Categoria Definições avançadas Descrição Cor Tema Defina o conjunto de cores do tema do gráfico. Eixo X Etiqueta Especifique um rótulo para o eixo X. Eixo X Escala Especifique a função de escala do eixo X. Eixo X Intervalo Especifique o intervalo de valores eixo X. Eixo Y Etiqueta Especifique um rótulo para o eixo Y. Eixo Y Escala Especifique a função de escala do eixo Y. Eixo Y Intervalo Especifique o intervalo de valores eixo Y. Mostrar Mostrar etiquetas Mostrar/ocultar os rótulos de resultados no gráfico. As alterações de configurações entram em vigor imediatamente e todas as configurações são salvas automaticamente no conteúdo do notebook.
Você pode facilmente renomear, duplicar, eliminar ou mover gráficos no menu da guia do gráfico. Você também pode arrastar e soltar abas para reordená-las. A primeira guia será exibida como padrão quando o bloco de anotações for aberto.
Uma barra de ferramentas interativa está disponível na nova experiência de gráfico quando o usuário passa o mouse sobre um gráfico. Suporta operações como ampliar, reduzir, selecionar para ampliar, redefinir, deslocamento, edição de anotações, etc.
Aqui está um exemplo de anotação de gráfico.
exibição de resumo display()
Use display(df, summary = true) para verificar o resumo de estatísticas de um determinado Apache Spark DataFrame. O resumo inclui o nome da coluna, o tipo de coluna, os valores exclusivos e os valores ausentes para cada coluna. Você também pode selecionar uma coluna específica para ver seu valor mínimo, valor máximo, valor médio e desvio padrão.
opção displayHTML()
Os blocos de anotações de Fabric suportam gráficos HTML usando a função displayHTML.
A imagem a seguir é um exemplo de criação de visualizações usando D3.js.
Para criar essa visualização, execute o código a seguir.
displayHTML("""<!DOCTYPE html>
<meta charset="utf-8">
<!-- Load d3.js -->
<script src="https://d3js.org/d3.v4.js"></script>
<!-- Create a div where the graph will take place -->
<div id="my_dataviz"></div>
<script>
// set the dimensions and margins of the graph
var margin = {top: 10, right: 30, bottom: 30, left: 40},
width = 400 - margin.left - margin.right,
height = 400 - margin.top - margin.bottom;
// append the svg object to the body of the page
var svg = d3.select("#my_dataviz")
.append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform",
"translate(" + margin.left + "," + margin.top + ")");
// Create Data
var data = [12,19,11,13,12,22,13,4,15,16,18,19,20,12,11,9]
// Compute summary statistics used for the box:
var data_sorted = data.sort(d3.ascending)
var q1 = d3.quantile(data_sorted, .25)
var median = d3.quantile(data_sorted, .5)
var q3 = d3.quantile(data_sorted, .75)
var interQuantileRange = q3 - q1
var min = q1 - 1.5 * interQuantileRange
var max = q1 + 1.5 * interQuantileRange
// Show the Y scale
var y = d3.scaleLinear()
.domain([0,24])
.range([height, 0]);
svg.call(d3.axisLeft(y))
// a few features for the box
var center = 200
var width = 100
// Show the main vertical line
svg
.append("line")
.attr("x1", center)
.attr("x2", center)
.attr("y1", y(min) )
.attr("y2", y(max) )
.attr("stroke", "black")
// Show the box
svg
.append("rect")
.attr("x", center - width/2)
.attr("y", y(q3) )
.attr("height", (y(q1)-y(q3)) )
.attr("width", width )
.attr("stroke", "black")
.style("fill", "#69b3a2")
// show median, min and max horizontal lines
svg
.selectAll("toto")
.data([min, median, max])
.enter()
.append("line")
.attr("x1", center-width/2)
.attr("x2", center+width/2)
.attr("y1", function(d){ return(y(d))} )
.attr("y2", function(d){ return(y(d))} )
.attr("stroke", "black")
</script>
"""
)
Incorporar um relatório do Power BI em um bloco de anotações
Importante
Este recurso está em pré-visualização.
O pacote Powerbiclient Python agora é suportado nativamente em notebooks Fabric. Você não precisa fazer nenhuma configuração extra (como processo de autenticação) no Fabric notebook Spark runtime 3.4. Basta importar powerbiclient
e depois continuar a sua exploração. Para saber mais sobre como usar o pacote powerbiclient, consulte a documentação do powerbiclient.
Powerbiclient suporta os seguintes recursos principais.
Renderizar um relatório existente do Power BI
Você pode facilmente incorporar e interagir com relatórios do Power BI em seus blocos de anotações com apenas algumas linhas de código.
A imagem a seguir é um exemplo de renderização de relatório existente do Power BI.
Execute o código a seguir para renderizar um relatório existente do Power BI.
from powerbiclient import Report
report_id="Your report id"
report = Report(group_id=None, report_id=report_id)
report
Criar visuais de relatório a partir de um DataFrame do Spark
Você pode usar um Spark DataFrame em seu bloco de anotações para gerar rapidamente visualizações perspicazes. Você também pode selecionar Salvar no relatório incorporado para criar um item de relatório em um espaço de trabalho de destino.
A imagem a seguir é um exemplo de um QuickVisualize()
DataFrame do Spark.
Execute o código a seguir para renderizar um relatório de um Spark DataFrame.
# Create a spark dataframe from a Lakehouse parquet table
sdf = spark.sql("SELECT * FROM testlakehouse.table LIMIT 1000")
# Create a Power BI report object from spark data frame
from powerbiclient import QuickVisualize, get_dataset_config
PBI_visualize = QuickVisualize(get_dataset_config(sdf))
# Render new report
PBI_visualize
Criar representações visuais de relatórios a partir de um DataFrame do pandas
Você também pode criar relatórios baseados em um pandas DataFrame em um notebook.
A imagem a seguir é um exemplo de um QuickVisualize()
DataFrame de um pandas.
Execute o código a seguir para renderizar um relatório de um Spark DataFrame.
import pandas as pd
# Create a pandas dataframe from a URL
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/fips-unemp-16.csv")
# Create a pandas dataframe from a Lakehouse csv file
from powerbiclient import QuickVisualize, get_dataset_config
# Create a Power BI report object from your data
PBI_visualize = QuickVisualize(get_dataset_config(df))
# Render new report
PBI_visualize
Bibliotecas populares
Quando se trata de visualização de dados, o Python oferece várias bibliotecas gráficas que vêm repletas de muitos recursos diferentes. Por padrão, cada pool do Apache Spark no Fabric contém um conjunto de bibliotecas de código aberto selecionadas e populares.
Matplotlib
Você pode renderizar bibliotecas de plotagem padrão, como Matplotlib, usando as funções de renderização internas para cada biblioteca.
A imagem a seguir é um exemplo de criação de um gráfico de barras usando Matplotlib.
Execute o código de exemplo a seguir para desenhar este gráfico de barras.
# Bar chart
import matplotlib.pyplot as plt
x1 = [1, 3, 4, 5, 6, 7, 9]
y1 = [4, 7, 2, 4, 7, 8, 3]
x2 = [2, 4, 6, 8, 10]
y2 = [5, 6, 2, 6, 2]
plt.bar(x1, y1, label="Blue Bar", color='b')
plt.bar(x2, y2, label="Green Bar", color='g')
plt.plot()
plt.xlabel("bar number")
plt.ylabel("bar height")
plt.title("Bar Chart Example")
plt.legend()
plt.show()
Bokeh (qualidade estética do desfoque em fotografia)
Você pode renderizar HTML ou bibliotecas interativas, como bokeh, usando o displayHTML(df).
A imagem a seguir é um exemplo de plotagem de glifos em um mapa usando bokeh.
Para desenhar esta imagem, execute o seguinte código de exemplo.
from bokeh.plotting import figure, output_file
from bokeh.tile_providers import get_provider, Vendors
from bokeh.embed import file_html
from bokeh.resources import CDN
from bokeh.models import ColumnDataSource
tile_provider = get_provider(Vendors.CARTODBPOSITRON)
# range bounds supplied in web mercator coordinates
p = figure(x_range=(-9000000,-8000000), y_range=(4000000,5000000),
x_axis_type="mercator", y_axis_type="mercator")
p.add_tile(tile_provider)
# plot datapoints on the map
source = ColumnDataSource(
data=dict(x=[ -8800000, -8500000 , -8800000],
y=[4200000, 4500000, 4900000])
)
p.circle(x="x", y="y", size=15, fill_color="blue", fill_alpha=0.8, source=source)
# create an html document that embeds the Bokeh plot
html = file_html(p, CDN, "my plot1")
# display this html
displayHTML(html)
Enredo
Você pode renderizar HTML ou bibliotecas interativas como Plotly, usando o displayHTML().
Para desenhar esta imagem, execute o seguinte código de exemplo.
from urllib.request import urlopen
import json
with urlopen('https://raw.githubusercontent.com/plotly/datasets/master/geojson-counties-fips.json') as response:
counties = json.load(response)
import pandas as pd
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/fips-unemp-16.csv",
dtype={"fips": str})
import plotly
import plotly.express as px
fig = px.choropleth(df, geojson=counties, locations='fips', color='unemp',
color_continuous_scale="Viridis",
range_color=(0, 12),
scope="usa",
labels={'unemp':'unemployment rate'}
)
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
# create an html document that embeds the Plotly plot
h = plotly.offline.plot(fig, output_type='div')
# display this html
displayHTML(h)
Pandas
Você pode visualizar a saída HTML de pandas DataFrames como a saída padrão. Os blocos de notas Fabric mostram automaticamente o conteúdo HTML estilizado.
import pandas as pd
import numpy as np
df = pd.DataFrame([[38.0, 2.0, 18.0, 22.0, 21, np.nan],[19, 439, 6, 452, 226,232]],
index=pd.Index(['Tumour (Positive)', 'Non-Tumour (Negative)'], name='Actual Label:'),
columns=pd.MultiIndex.from_product([['Decision Tree', 'Regression', 'Random'],['Tumour', 'Non-Tumour']], names=['Model:', 'Predicted:']))
df