網(wǎng)站制作NEWS
Shiny for Python APP開發(fā)
Shiny for Python與R Shiny在功能和函數(shù)上有類似之處,但APP結(jié)構(gòu)和函數(shù)命名存在差異。通過一個簡單的APP示例,我們可以了解如何從CSV文件讀取預(yù)處理的墨爾本市房價數(shù)據(jù),并繪制房價分布圖。用戶可以選擇按房價原值或?qū)?shù)變換后的值來繪制分布圖,APP輸出用戶選擇的顯示結(jié)果以及對應(yīng)的分布圖。
具體實現(xiàn)可參考app.py源碼,通過在線體驗網(wǎng)址進行觀察。運行效果顯示:
1、原量綱繪制,房價分布呈現(xiàn)明顯的右偏狀態(tài)。
2、經(jīng)過對數(shù)轉(zhuǎn)換后,房價接近正態(tài)分布。
此示例展示了Python數(shù)據(jù)分析場景,涉及使用Pandas、Numpy操作數(shù)據(jù),以及Matplotlib、Seaborn進行可視化。Shiny則增強了APP的交互能力。
Shiny for Python與R Shiny的主要區(qū)別在于:
1、Shiny for Python的APP以單一形式啟動,而R Shiny有小規(guī)模和大規(guī)模兩種形式,分別對應(yīng)app.R、global.R、ui.R、server.R等程序文件。
2、所有UI函數(shù)在shiny.ui模塊下,通過ui.XXX引用,如ui.page_fluid()、ui.layout_sidebar()等。
3、輸入在ui.input_XXX()函數(shù)中定義,XXX代表各種輸入類型,如ui.input_radio_buttons()定義了選擇房價表示方式的Radio按鈕。
4、輸出在ui.output_XXX()中定義,如ui.output_text_verbatim()或ui.output_plot(),服務(wù)器端則定義相應(yīng)的渲染函數(shù)。
5、Shiny for Python使用函數(shù)修飾符定義輸出變量和渲染函數(shù),與R Shiny相比,此步驟在代碼中體現(xiàn)為“@”后的部分。
具體組件的使用方法,可參考Shiny for Python的在線文檔、API引用說明和在線實例。深入了解函數(shù)修飾符的用法,有助于更高效地構(gòu)建交互式APP。
Shiny for Python會啟動一個Python服務(wù)器進程來運行APP,通常通過隨機分配的端口或Shiny Server的端口(如3838)訪問。
多重隨機標(biāo)簽