python數(shù)據(jù)可視化程序開發(fā)中有一個(gè)需求就是,需要統(tǒng)計(jì)近幾年以來某一項(xiàng)的數(shù)據(jù)變化,并且以折線圖形式顯示在一個(gè)統(tǒng)計(jì)圖像上循環(huán) 。而下文就是python繪制時(shí)間輪播折線圖的詳細(xì)教程,感興趣和想學(xué)習(xí)的小伙伴就一起往下看看吧 。

1.繪制這個(gè)圖像需要使用到pyecharts庫以及randoom庫,前一個(gè)是用來繪制圖像的,后一個(gè)則是用以來隨機(jī)生成折線圖繪制所需數(shù)據(jù),導(dǎo)入模塊代碼示例如下所示:
from random import randintfrom pyecharts import options as optsfrom pyecharts.charts import Line, Timelinefrom pyecharts.globals import ThemeType2.模塊導(dǎo)入完成之后定義一個(gè)列表對(duì)象保存時(shí)間數(shù)據(jù),而這個(gè)時(shí)間的值可以隨便寫,不過數(shù)量需要和生成的隨機(jī)折線圖數(shù)據(jù)組數(shù)量一致 。而另外一個(gè)列表對(duì)象使用雙層for循環(huán)嵌套加上列表生成式語法,這樣就可以生成出繪制足夠數(shù)量折線圖的數(shù)據(jù)了 。然后再去定義一個(gè)字典,這個(gè)字典里面是折線圖x軸的數(shù)據(jù),將其和前兩個(gè)列表對(duì)象壓縮在一起形成完成數(shù)據(jù)組,詳細(xì)代碼如下:
list1 = [2018, 2019, 2020, 2021, 2022]list2 = [[randint(100, 1000) for time in range(7)] for year in range(5)] data = {'x': ['學(xué)','樂','休','動(dòng)','流'],'時(shí)': dict(zip(list1, list2))}3.下面這個(gè)函數(shù)就是繪制時(shí)間輪播折線圖的關(guān)鍵了,需要使用特殊語法->來調(diào)用Timeline模塊創(chuàng)建結(jié)構(gòu) 。在此結(jié)構(gòu)之中需要先讀取壓縮好的數(shù)據(jù)組,然后再實(shí)例化時(shí)間對(duì)象,通過for循環(huán)第一個(gè)年份列表來構(gòu)建多個(gè)折線圖 。
循環(huán)之中用bar()方法生成折線圖,根據(jù)參數(shù)來傳入xy坐標(biāo)軸數(shù)據(jù)以及圖像標(biāo)題 。而輪播切換的關(guān)鍵在于tl對(duì)象調(diào)用add()方法將折線圖添加到輪播組件內(nèi),這樣就可以實(shí)現(xiàn)自動(dòng)和點(diǎn)擊來切換顯示的折線圖了,詳細(xì)代碼示例如下所示:
def timeline_bar() -> Timeline: x = data['x'] tl = Timeline() for i in list1: bar = (Line().add_xaxis(x).add_yaxis('時(shí)長(zhǎng)(min)', data['時(shí)長(zhǎng)'][i]) .set_global_opts(title_opts=opts.TitleOpts("{}年統(tǒng)計(jì)".format(i)))) tl.add(bar, "{}年".format(i)) return tltimeline_bar().render("圖.html")因?yàn)樵摰谌綆熘荒軌驅(qū)⒗L制出來的圖像以html文檔形式保存起來,所以代碼運(yùn)行后會(huì)生成這個(gè)文檔在當(dāng)前路徑,使用瀏覽器將其打開即可 。

【Python怎么畫時(shí)間輪播折線圖?Python如何繪制循環(huán)折線圖】以上就是關(guān)于“Python怎么畫時(shí)間輪播折線圖?Python如何繪制循環(huán)折線圖”的全部?jī)?nèi)容了,希望對(duì)你有所幫助 。



微信掃碼,學(xué)習(xí)更方便

現(xiàn)在報(bào)名贈(zèng)100例知識(shí)點(diǎn)合集
猜你喜歡
- Python輪播圖如何繪制?Python怎么使用pyecharts庫畫輪播圖
- Python深度學(xué)習(xí)特征提取怎么做?Python如何使用TensorFlow獲取訓(xùn)練參數(shù)
- python字典中如果獲取對(duì)應(yīng)的鍵?python獲取字典對(duì)應(yīng)鍵的方法
- Python編程中怎么使用time模塊clock方法?python中time.clock()的使用方法
- 冰箱停電后再用就不制冷怎么辦
- Python中timedalta函數(shù)的作用是什么?Python中timedalta函數(shù)基本使用方法
- Python開發(fā)中g(shù)it如何安裝?如何在Python中安裝git的交互庫?
- 怎么在Python中將series轉(zhuǎn)換成list列表?python中series和list相互轉(zhuǎn)換的方法
- 微信零錢限額了零錢怎么轉(zhuǎn)出來啊
- python中如何使用tolist方法?Python中數(shù)組或者矩陣如何轉(zhuǎn)換為列表?
