Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure Synapse ist ein integrierter Analysedienst, der Zeit für Einblicke in Data Warehouses und Big Data Analytics-Systeme beschleunigt. Die Datenvisualisierung ist eine wichtige Komponente, um Einblicke in Ihre Daten zu erhalten. Es hilft, große und kleine Daten für Menschen leichter verständlich zu machen. Außerdem ist es einfacher, Muster, Trends und Ausreißer in Datengruppen zu erkennen.
Bei der Verwendung von Apache Spark in Azure Synapse Analytics gibt es verschiedene integrierte Optionen, mit denen Sie Ihre Daten visualisieren können, einschließlich Synapse-Notizbuchdiagrammoptionen, Zugriff auf beliebte Open-Source-Bibliotheken und Integration in Synapse SQL und Power BI.
Optionen für Notizbuchdiagramme
Wenn Sie ein Azure Synapse-Notizbuch verwenden, können Sie die Tabellenergebnisansicht mithilfe von Diagrammoptionen in ein angepasstes Diagramm umwandeln. Hier können Sie Ihre Daten visualisieren, ohne Code schreiben zu müssen.
display(df)-Funktion
Mit der display Funktion können Sie SQL-Abfragen und Apache Spark-Datenframes und RDDs in umfangreiche Datenvisualisierungen umwandeln. Die display Funktion kann für Datenframes oder RDDs verwendet werden, die in PySpark, Scala, Java, R und .NET erstellt wurden.
So greifen Sie auf die Diagrammoptionen zu:
Die Ausgabe von
%%sqlmagischen Befehlen wird standardmäßig in der gerenderten Tabellenansicht angezeigt. Sie können auch die Funktiondisplay(df)auf Spark DataFrames oder Resilient Distributed Datasets (RDD) anwenden, um die gerenderte Tabellenansicht anzuzeigen.Sobald Sie eine gerenderte Tabellenansicht haben, wechseln Sie zur Diagrammansicht.
Sie können ihre Visualisierung jetzt anpassen, indem Sie die folgenden Werte angeben:
Konfiguration Beschreibung Diagrammtyp Die displayFunktion unterstützt eine breite Palette von Diagrammtypen, einschließlich Balkendiagrammen, Punktdiagrammen, Liniendiagrammen und mehrSchlüssel Angeben des Wertebereichs für die x-Achse Wert Angeben des Wertebereichs für die Y-Achsenwerte Seriengruppe Wird verwendet, um die Gruppen für die Aggregation zu bestimmen. Aggregation Methode zum Aggregieren von Daten in Ihrer Visualisierung Hinweis
Standardmäßig verwendet die
display(df)Funktion nur die ersten 1000 Zeilen der Daten, um die Diagramme zu rendern. Überprüfen Sie die Gesamtergebnisse der Aggregation, und klicken Sie auf die Schaltfläche Anwenden, um die Diagrammgenerierung auf das gesamte Dataset anzuwenden. Ein Spark-Auftrag wird ausgelöst, wenn sich die Diagrammeinstellung ändert. Bitte beachten Sie, dass es mehrere Minuten dauern kann, bis die Berechnung abgeschlossen und das Diagramm gerendert wird.Sobald Sie fertig sind, können Sie Ihre endgültige Visualisierung anzeigen und mit ihnen interagieren!
display(df) Statistikdetails
Sie können display(df, summary = true) verwenden, um die Statistikzusammenfassung eines bestimmten Apache Spark DataFrame zu überprüfen, die den Spaltennamen, den Spaltentyp, eindeutige Werte und fehlende Werte für jede Spalte enthält. Sie können auch eine bestimmte Spalte auswählen, um den Minimalwert, den Maximalwert, den Mittelwert und die Standardabweichung anzuzeigen.
displayHTML(): Option
Azure Synapse Analytics-Notizbücher unterstützen HTML-Grafiken mithilfe der displayHTML Funktion.
Die folgende Abbildung ist ein Beispiel für das Erstellen von Visualisierungen mithilfe von D3.js.
Führen Sie den folgenden Code aus, um die oben genannte Visualisierung zu erstellen.
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>
"""
)
Python-Bibliotheken
Wenn es um Datenvisualisierung geht, bietet Python mehrere Grafikbibliotheken, die über viele verschiedene Features verfügen. Standardmäßig enthält jeder Apache Spark Pool in Azure Synapse Analytics eine Reihe kuratierter und beliebter Open-Source-Bibliotheken. Sie können auch zusätzliche Bibliotheken und Versionen hinzufügen oder verwalten, indem Sie die Verwaltungsfunktionen der Azure Synapse Analytics-Bibliothek verwenden.
Matplotlib
Sie können standardmäßige Zeichnungsbibliotheken wie Matplotlib mithilfe der integrierten Renderingfunktionen für die einzelnen Bibliotheken rendern.
Die folgende Abbildung ist ein Beispiel für die Erstellung eines Balkendiagramms mithilfe von Matplotlib.
Führen Sie den folgenden Beispielcode aus, um das Bild oben zu zeichnen.
# 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
Sie können HTML oder interaktive Bibliotheken wie Bokeh mit dem displayHTML(df) rendern.
Das folgende Bild ist ein Beispiel für das Zeichnen von Glyphen auf einer Karte mithilfe von bokeh.
Führen Sie den folgenden Beispielcode aus, um das Bild oben zu zeichnen.
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)
Plotly
Sie können HTML-oder interaktive Bibliotheken wie Plotly mithilfe von displayHTML() rendern.
Führen Sie den folgenden Beispielcode aus, um das folgende Bild zu zeichnen.
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
Sie können html-Ausgabe von Pandas Dataframe als Standardausgabe anzeigen, Notizbuch zeigt automatisch den formatierten HTML-Inhalt an.
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
Weitere Bibliotheken
Über diese Bibliotheken hinaus enthält die Azure Synapse Analytics-Runtime auch die folgenden Bibliotheken, die häufig für die Datenvisualisierung verwendet werden:
Sie können die Dokumentation zur Azure Synapse Analytics-Runtime besuchen, um die aktuellsten Informationen zu den verfügbaren Bibliotheken und Versionen zu erhalten.
R-Bibliotheken (Vorschau)
Das R-Ökosystem bietet mehrere Grafikbibliotheken, die über viele verschiedene Features verfügen. Standardmäßig enthält jeder Apache Spark Pool in Azure Synapse Analytics eine Reihe kuratierter und beliebter Open-Source-Bibliotheken. Sie können auch zusätzliche Bibliotheken und Versionen hinzufügen oder verwalten, indem Sie die Verwaltungsfunktionen der Azure Synapse Analytics-Bibliothek verwenden.
ggplot2
Die Bibliothek ggplot2 ist beliebt für die Datenvisualisierung und explorative Datenanalyse.
library(ggplot2)
data(mpg, package="ggplot2")
theme_set(theme_bw())
g <- ggplot(mpg, aes(cty, hwy))
# Scatterplot
g + geom_point() +
geom_smooth(method="lm", se=F) +
labs(subtitle="mpg: city vs highway mileage",
y="hwy",
x="cty",
title="Scatterplot with overlapping points",
caption="Source: midwest")
rBokeh
rBokeh ist eine native R Plotting-Bibliothek zum Erstellen interaktiver Grafiken, die von der Bokeh-Visualisierungsbibliothek unterstützt werden.
Um rBokeh zu installieren, können Sie den folgenden Befehl verwenden:
install.packages("rbokeh")
Nach der Installation können Sie rBokeh nutzen, um interaktive Visualisierungen zu erstellen.
library(rbokeh)
p <- figure() %>%
ly_points(Sepal.Length, Sepal.Width, data = iris,
color = Species, glyph = Species,
hover = list(Sepal.Length, Sepal.Width))
R Plotly
Plotlys R-Diagrammbibliothek erstellt interaktive Diagramme in Druckqualität.
Um Plotly zu installieren, können Sie den folgenden Befehl verwenden:
install.packages("plotly")
Nach der Installation können Sie Plotly nutzen, um interaktive Visualisierungen zu erstellen.
library(plotly)
fig <- plot_ly() %>%
add_lines(x = c("a","b","c"), y = c(1,3,2))%>%
layout(title="sample figure", xaxis = list(title = 'x'), yaxis = list(title = 'y'), plot_bgcolor = "#c7daec")
fig
Highcharter
Highcharter ist ein R-Wrapper für highcharts JavaScript-Bibliothek und seine Module.
Zum Installieren von Highcharter können Sie den folgenden Befehl verwenden:
install.packages("highcharter")
Nach der Installation können Sie Highcharter verwenden, um interaktive Visualisierungen zu erstellen.
library(magrittr)
library(highcharter)
hchart(mtcars, "scatter", hcaes(wt, mpg, z = drat, color = hp)) %>%
hc_title(text = "Scatter chart with size and color")
Herstellen einer Verbindung mit Power BI mithilfe von Apache Spark & SQL On-Demand
Azure Synapse Analytics ist tief in Power BI integriert, sodass Datentechniker Analyselösungen erstellen können.
Azure Synapse Analytics ermöglicht es den verschiedenen Arbeitsbereichsberechnungsmodulen, Datenbanken und Tabellen zwischen seinen Spark-Pools und dem serverlosen SQL-Pool freizugeben. Mithilfe des freigegebenen Metadatenmodells können Sie Ihre Apache Spark-Tabellen mithilfe von SQL bei Bedarf abfragen. Nachdem Sie fertig sind, können Sie Ihren SQL-On-Demand-Endpunkt mit Power BI verbinden, um ihre synchronisierten Spark-Tabellen auf einfache Weise abzufragen.
Nächste Schritte
- Weitere Informationen über das Einrichten des Spark SQL DW-Connectors: Synapse SQL Connector
- Anzeigen der Standardbibliotheken: Azure Synapse Analytics-Runtime