Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
ipywidgets jsou vizuální prvky, které uživatelům umožňují zadat hodnoty parametrů v buňkách poznámkového bloku. Pomocí ipywidgets můžete vytvářet interaktivní poznámkové bloky Databricks Python.
Balíček ipywidgetů obsahuje více než 30 různých ovládacích prvků, včetně ovládacích prvků formulářů, jako jsou posuvníky, textová pole a zaškrtávací políčka, a také ovládací prvky rozložení, jako jsou tabulátory, akordeony a mřížky. Pomocí těchto prvků můžete vytvořit grafická uživatelská rozhraní pro interakci s vaším kódem poznámkového bloku.
Poznámka:
- Pokud chcete zjistit verzi ipywidgetů, které váš cluster podporuje, přečtěte si poznámky k verzi vašeho clusteru pro Databricks Runtime.
- Některé ipywidget nefungují v Databricks Runtime 15.0.
- Informace o widgetech Databricks najdete v tématu Widgety Databricks. Pokyny k používání widgetů Databricks nebo ipywidgetů najdete v tématu Osvědčené postupy pro používání ipywidgetů a widgetů Databricks.
Požadavky
- ipywidgets jsou k dispozici ve verzi preview v Databricks Runtime 11.0 až do Databricks Runtime 12.2 LTS a jsou obecně dostupné v Databricks Runtime 13.0 a vyšší. Podpora tabulek katalogu Unity je dostupná v databricks Runtime 12.2 LTS a vyšší v clusterech s podporou katalogu Unity.
- Pokud chcete v Databricks používat ipywidgety, musí mít váš prohlížeč přístup k
databricks-dev-cloudfront.dev.databricks.comdoméně.
Ve výchozím nastavení ipywidgets zabírá port 6062. Pokud v Databricks Runtime 11.3 LTS a novějším narazíte na konflikty s integracemi třetích stran, jako je Datadog, můžete port změnit pomocí následující konfigurace Sparku:
spark.databricks.driver.ipykernel.commChannelPort <port-number>
Příklad:
spark.databricks.driver.ipykernel.commChannelPort 1234
Při vytváření clusteru musí být nastavená konfigurace Sparku.
Využití
Následující kód vytvoří histogram s posuvníkem, který může převzít hodnoty mezi 3 a 10. Hodnota widgetu určuje počet košů v histogramu. Když posunete posuvník, histogram se okamžitě aktualizuje. Pokud to chcete vyzkoušet, podívejte se na ukázkový poznámkový blok ipywidgets.
import ipywidgets as widgets
from ipywidgets import interact
# Load a dataset
sparkDF = spark.read.csv("/databricks-datasets/bikeSharing/data-001/day.csv", header="true", inferSchema="true")
# In this code, `(bins=(3, 10)` defines an integer slider widget that allows values between 3 and 10.
@interact(bins=(3, 10))
def plot_histogram(bins):
pdf = sparkDF.toPandas()
pdf.hist(column='temp', bins=bins)
Následující kód vytvoří celočíselný posuvník, který může převzít hodnoty mezi 0 a 10. Výchozí hodnota je 5. Pokud chcete získat přístup k hodnotě posuvníku v kódu, použijte int_slider.value.
import ipywidgets as widgets
int_slider = widgets.IntSlider(max=10, value=5)
int_slider
Následující kód načte a zobrazí ukázkový datový rámec z tabulky v katalogu Unity. Podpora tabulek katalogu Unity je k dispozici s modulem Databricks Runtime 12.1 a novějším v clusterech s podporou katalogu Unity.
import ipywidgets as widgets
# Create button widget. Clicking this button loads a sampled dataframe from UC table.
button = widgets.Button(description="Load dataframe sample")
# Output widget to display the loaded dataframe
output = widgets.Output()
def load_sample_df(table_name):
return spark.sql(f"SELECT * FROM {table_name} LIMIT 1000")
def on_button_clicked(_):
with output:
output.clear_output()
df = load_sample_df('<catalog>.<schema>.<table>')
print(df.toPandas())
# Register the button's callback function to query UC and display results to the output widget
button.on_click(on_button_clicked)
display(button, output)
Příklad poznámkového bloku: ipywidgets
Následující poznámkový blok ukazuje některé příklady použití ipywidgetů v poznámkových blocích.
Ukázkový poznámkový blok ipywidgets
Získej poznámkový blok
Příklad poznámkového bloku: rozšířený příklad ipywidgets
Následující poznámkový blok ukazuje složitější příklad použití ipywidgets k vytvoření interaktivní mapy.
Rozšířený příklad: mapy s ipywidgets
Získej poznámkový blok
Osvědčené postupy pro používání widgetů ipywidget a Databricks
Pokud chcete přidat interaktivní ovládací prvky do Python poznámkových bloků, doporučuje Databricks používat nástroje ipywidgets. Pro poznámkové bloky v jiných jazycích používejte ovládací prvky Databricks.
Pomocí widgetů Databricks můžete předávat parametry mezi poznámkovými bloky a předávat parametry úlohám; nástroje ipywidget nepodporují tyto scénáře.
Které widgety Jupyter třetích stran jsou v Databricks podporované?
Databricks poskytuje podporu podle nejlepších možností pro widgety třetích stran, jako ipyleaflet, bqplot a VegaFusion. Některé widgety třetích stran se ale nepodporují. Pro seznam widgetů, které byly testovány v poznámkových blocích Azure Databricks, kontaktujte váš tým pro účet Azure Databricks.
Omezení
Pro více informací si přečtěte Známá omezení poznámkových bloků Databricks.