ipywidgets
預覽
此功能已在公共預覽.
ipywidgets是可視化元素,允許用戶在筆記本單元格中指定參數值。可以使用ipywidgets使Databricks Python筆記本具有交互性。
ipywidgets包包括over30種不同的控製,包括滑塊、文本框和複選框等表單控件,以及選項卡、手風琴和網格等布局控件。使用這些元素,您可以構建圖形用戶界麵來與您的筆記本代碼交互。
請注意
有關Databricks小部件的信息,請參見磚小部件.有關何時使用Databricks小部件或ipywidgets的指導原則,請參見使用ipywidgets和Databricks widgets的最佳實踐.
需求
ipywidgets在Databricks Runtime 11.0及以上版本中可用。
您的帳戶和工作空間必須位於平台的E2版本上。Beplay体育安卓版本要確認您正在使用的平台版本,請與您的Databricks代表Beplay体育安卓版本聯係。
請注意
默認情況下,ipywidgets占用6062端口。在Databricks Runtime 11.2及以上版本中,如果您與第三方集成(如datdog)發生衝突,則可以使用以下方法更改端口火花配置:
spark.databricks.driver.ipykernel.commChannelPort<端口號>
例如:
spark.databricks.driver.ipykernel.commChannelPort1234
Spark配置必須在創建集群時設置。
使用
下麵的代碼創建了一個直方圖,其中有一個滑塊,可以取3到10之間的值。小部件的值決定了直方圖中的箱的數量。當您移動滑塊時,柱狀圖立即更新。看到ipywidgets示例筆記本來試試這個。
進口ipywidgets作為小部件從ipywidgets進口交互#加載數據集sparkDF=火花.讀.csv(“/ databricks-datasets /例如/數據- 001 / day.csv”,頭=“真正的”,inferSchema=“真正的”)在這段代碼中,' (bins=(3,10) '定義了一個允許值在3到10之間的整數滑塊小部件。@interact(垃圾箱=(3.,10))defplot_histogram(垃圾箱):pdf=sparkDF.toPandas()pdf.噓(列=“臨時”,垃圾箱=垃圾箱)
下麵的代碼創建了一個整數滑塊,它可以取0到10之間的值。缺省值是5。要在代碼中訪問滑塊的值,請使用int_slider.value
.
進口ipywidgets作為小部件int_slider=小部件.IntSlider(馬克斯=10,價值=5)int_slider
使用ipywidgets和Databricks widgets的最佳實踐
要向Python筆記本添加交互式控件,Databricks建議使用ipywidgets。對於其他語言的筆記本,使用磚小部件.
您可以使用Databricks小部件來在筆記本之間傳遞參數和傳遞參數給作業;Ipywidgets不支持這些場景。
Databricks支持哪些第三方Jupyter小部件?
Databricks為第三方小部件提供了最佳支持,例如ipyleaflet,bqplot,VegaFusion.但是,不支持一些第三方小部件。有關已在Databricks筆記本中測試過的小部件列表,請與您的Databricks代表聯係。
限製
使用ipywidgets的筆記本必須附加到正在運行的集群。
小部件狀態不會跨筆記本會話保存。每次將筆記本附加到集群時,必須重新運行小部件單元格來呈現它們。
不支持以下ipywidgets:密碼、文件上傳、控製器。
帶有LaTeX表達式的HTMLMath和Label小部件不能正確呈現。(例如,
widgets.Label(值= r ' $ $ \壓裂{x + 1} {x - 1} $ $’)
沒有正確渲染。)如果筆記本處於暗模式,小部件可能無法正常渲染,特別是彩色小部件。
Widget輸出不能在筆記本儀表板視圖中使用。
ipywidget的最大消息有效負載大小是5 MB。使用圖像或大型文本數據的widget可能無法正確呈現。