Streamlit+Echarts實現(xiàn)繪制精美圖表
在數(shù)據(jù)分析和可視化的領(lǐng)域,選擇合適的工具可以讓我們事半功倍。今天,我們要介紹的兩個工具,Streamlit 和 ECharts,各自在快速應(yīng)用開發(fā)和高效數(shù)據(jù)可視化方面都有出色的表現(xiàn)。更為令人興奮的是,當(dāng)這兩者結(jié)合時,我們能輕松地創(chuàng)建出互動性強、美觀的數(shù)據(jù)大屏。
工具的簡介
Streamlit
Streamlit是一個開源的Python庫,允許數(shù)據(jù)科學(xué)家和工程師在幾分鐘內(nèi)轉(zhuǎn)化他們的數(shù)據(jù)腳本為交互的Web應(yīng)用。其特點在于其簡單性和靈活性。開發(fā)者無需前端經(jīng)驗,只需要Python基礎(chǔ)即可。其聲明性的交互模型意味著不必處理回調(diào)或服務(wù)器配置,Streamlit為你處理了這一切。
ECharts
ECharts是一個由百度開發(fā)的開源JavaScript可視化庫。它提供了諸如折線、柱狀、餅圖、散點、地圖等豐富的圖表類型,并支持多種交互方式,可以輕松地與各種數(shù)據(jù)源集成,是大數(shù)據(jù)時代的得力助手。
安裝模塊的庫
在深入實戰(zhàn)前,我們首先要確保機器上已經(jīng)安裝了Streamlit和streamlit-echarts??梢酝ㄟ^以下命令輕松完成:
pip?install?streamlit pip?install?streamlit-echarts
Streamlit與ECharts實戰(zhàn)
在準(zhǔn)備工作完成后,我們可以開始使用Streamlit和ECharts創(chuàng)建我們的第一個交互式數(shù)據(jù)大屏。代碼如下
import?streamlit?as?st
from?streamlit_echarts?import?st_echarts
#?定義ECharts的配置
option?=?{
????"title":?{"text":?"ECharts示例"},
????"tooltip":?{},
????"xAxis":?{
????????"data":?["襯衫",?"羊毛衫",?"雪紡衫",?"褲子",?"高跟鞋",?"襪子"]
????},
????"yAxis":?{},
????"series":?[
????????{
????????????"name":?"銷量",
????????????"type":?"bar",
????????????"data":?[5,?20,?36,?10,?10,?20]
????????}
????]
}
#?在Streamlit應(yīng)用中展示ECharts圖表
st_echarts(options=option)output

這段代碼演示了如何使用streamlit和streamlit_echarts來展示一個ECharts圖表。我們導(dǎo)入創(chuàng)建Streamlit Web應(yīng)用和展示ECharts圖表所需的庫,接下去,我們定義了一個字典option,它定義了ECharts圖表的配置,其中
- title:定義了圖表的標(biāo)題為 "ECharts示例"。
- tooltip:用于當(dāng)鼠標(biāo)懸停在圖表的數(shù)據(jù)點上時顯示的提示信息。在這里,它被設(shè)置為空,這意味著使用默認(rèn)設(shè)置。
- xAxis:定義了 x 軸的數(shù)據(jù)。在這個示例中,x 軸的數(shù)據(jù)為一系列商品的名稱。
- yAxis:定義了 y 軸的配置。這里為空,意味著使用默認(rèn)設(shè)置。
- series:定義了圖表的數(shù)據(jù)系列。在這里,我們有一個系列(銷量)顯示為柱狀圖,其對應(yīng)的數(shù)據(jù)也被提供。
最后便是代碼st_echarts(options=option),使用了st_echarts函數(shù),并將我們之前定義的option作為參數(shù)傳遞,從而渲染相應(yīng)的圖表。我們再來看一下例子,代碼如下
from?pyecharts?import?options?as?opts from?pyecharts.charts?import?Bar from?streamlit_echarts?import?st_pyecharts b?=?( ????Bar() ????.add_xaxis(["Microsoft",?"Amazon",?"IBM",?"Oracle",?"Google",?"Alibaba"]) ????.add_yaxis( ????????"2017-2018?Revenue?in?(billion?$)",?[21.2,?20.4,?10.3,?6.08,?4,?2.2] ????) ????.set_global_opts( ????????title_opts=opts.TitleOpts( ????????????title="Top?cloud?providers?2018",?subtitle="2017-2018?Revenue" ????????), ????????toolbox_opts=opts.ToolboxOpts(), ????) ) st_pyecharts(b)
output

上述的代碼中
- 我們初始化一個
Bar(柱狀圖)對象。 - 使用
add_xaxis方法添加x軸數(shù)據(jù),這里列出了六個云服務(wù)提供商的名稱。 - 使用
add_yaxis方法添加y軸數(shù)據(jù),這里列出了這些云服務(wù)提供商在 2017-2018 年的收入(單位:十億美元)。 - 使用
set_global_opts方法全局設(shè)置圖表的標(biāo)題和其他選項。title_opts定義了圖表的主標(biāo)題和副標(biāo)題。toolbox_opts提供了一些工具,例如保存為圖片。
到此這篇關(guān)于Streamlit+Echarts實現(xiàn)繪制精美圖表的文章就介紹到這了,更多相關(guān)Streamlit Echarts內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python函數(shù)裝飾器之帶參數(shù)的函數(shù)和帶參數(shù)的裝飾器用法示例
這篇文章主要介紹了python函數(shù)裝飾器之帶參數(shù)的函數(shù)和帶參數(shù)的裝飾器用法,結(jié)合實例形式分析了Python函數(shù)裝飾器中函數(shù)帶多個參數(shù)以及裝飾器帶有多個參數(shù)的具體原理與實現(xiàn)方法,需要的朋友可以參考下2019-11-11
Python正則表達(dá)式實現(xiàn)簡易計算器功能示例
這篇文章主要介紹了Python正則表達(dá)式實現(xiàn)簡易計算器功能,涉及Python正則判定及數(shù)值計算相關(guān)操作技巧,需要的朋友可以參考下2019-05-05
Python 調(diào)用 Windows API COM 新法
Python中調(diào)用Win32API 通常都是使用 PyWin32或者ctypes。本文給大家介紹Python 調(diào)用 Windows API COM 新法,感興趣的朋友跟隨小編一起看看吧2019-08-08
Python中plt.scatter()函數(shù)的常見用法小結(jié)
這篇文章主要介紹了Python中plt.scatter()函數(shù)的常見用法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-04-04
詳解Python中數(shù)據(jù)類型的轉(zhuǎn)換
這篇文章主要為大家詳細(xì)介紹了Python中數(shù)據(jù)類型轉(zhuǎn)換的相關(guān)資料,文中的示例代碼講解詳細(xì),具有一定的參考價值,感興趣的小伙伴可以了解一下2023-03-03
python3+telnetlib實現(xiàn)簡單自動測試示例詳解
telnetlib 模塊提供一個實現(xiàn)Telnet協(xié)議的類 Telnet,本文重點給大家介紹python3+telnetlib實現(xiàn)簡單自動測試示例詳解,需要的朋友可以參考下2021-08-08
Django中實現(xiàn)點擊圖片鏈接強制直接下載的方法
這篇文章主要介紹了Django中實現(xiàn)點擊圖片鏈接強制直接下載的方法,涉及Python操作圖片的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下2015-05-05
pycharm社區(qū)版安裝django并創(chuàng)建一個簡單項目的全過程
社區(qū)版的pycharm跟專業(yè)版的pycharm應(yīng)用差別還是不太大,下面這篇文章主要給大家介紹了關(guān)于pycharm社區(qū)版安裝django并創(chuàng)建一個簡單項目的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-05-05
安裝并免費使用Pycharm專業(yè)版(學(xué)生/教師)
這篇文章主要介紹了安裝并免費使用Pycharm專業(yè)版(學(xué)生/教師),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09

