国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

新聞 前端
在本文中,我們將學(xué)習(xí)如何在Python中創(chuàng)建交互式可視化。我們將從僅僅以不同格式繪制數(shù)據(jù)開始,然后再探索添加更多交互式控件。

 在本文中,我們將學(xué)習(xí)如何在Python中創(chuàng)建交互式可視化。我們將從僅僅以不同格式繪制數(shù)據(jù)開始,然后再探索添加更多交互式控件。

今天,我們將學(xué)習(xí)如何使用Plotly express。Plotly允許用戶在肉眼可見的可視化界面上進行數(shù)據(jù)交互,并且與Web內(nèi)容集成起來要容易得多。

plotly express簡介

plotly express是 plotly 包裝器,它允許使用更簡單的語法。

受Seaborn和ggplot2的啟發(fā),它經(jīng)過專門設(shè)計,具有簡潔、一致且易于學(xué)習(xí)的API:只需一次導(dǎo)入,你就可以在一個函數(shù)調(diào)用中創(chuàng)建豐富的交互式圖,包括刻面、地圖、動畫和趨勢線。

如果你想了解更多信息,可訪問Plotly的官方文檔:
https://medium.com/plotly/introducing-plotly-express-808df010143d

只需要兩行代碼,你就可以擁有一個漂亮的交互式圖表,非常簡單:

  1. import plotly.express as px  
  2. fig = px.line(x='x data set', y= 'y data set')  
  3. fig.show()  

數(shù)據(jù)來源及準備

在本文中,我們將使用COVID-19數(shù)據(jù)集。

我們將使用以下代碼來獲取和格式化數(shù)據(jù):

  1. import plotly.express as px  
  2. import numpy as np  
  3. import pandas as pd  
  4. url = 'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv'  
  5. df = pd.read_csv(url, delimiter=',', header='infer')  
  6. df_interest = df.loc[  
  7. df['Country/Region'].isin(['United Kingdom''US''Italy''Brazil''India'])  
  8. & df['Province/State'].isna()]  
  9. df_interest.rename(  
  10. index=lambda x: df_interest.at[x, 'Country/Region'], inplace=True)  
  11. df1 = df_interest.transpose()  
  12. df1 = df1.drop(['Province/State''Country/Region''Lat''Long'])  
  13. df1 = df1.loc[(df1 != 0).any(1)]  
  14. df1.index = pd.to_datetime(df1.index)  
  15. df1 = df1.diff() #數(shù)據(jù)每日變化  

創(chuàng)建圖表

1、線圖

要在圖形上添加一個國家的疫情數(shù)據(jù)可視化,我們只需要兩行代碼:

  1. fig = px.line(x=df1.index, y= df1[df1.columns[0]],title = 'Daily Deaths due to COVID-19', name = df1.columns[0])  
  2. fig.show()  

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

單線圖

要添加更多國家的數(shù)據(jù),我們需要.add_scatter()屬性。通過使用循環(huán),我們可以添加所有范圍內(nèi)的國家。

  1. fig = px.line()  
  2. for i,n in enumerate(df1.columns):  
  3. fig.add_scatter(x=df1.index, y= df1[df1.columns[i]], name= df1.columns[i])  

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

多線圖

最后,我們可以考慮在圖中添加更多的細節(jié),個人喜歡在圖中突出顯示不同的數(shù)據(jù)點。

  1. fig.update_traces(mode='markers+lines')  

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

帶標記的圖形

最后,添加相關(guān)的軸標簽,設(shè)置字體大小并替換默認模板。

  1. fig.update_layout(  
  2. title = 'Daily Deaths due to COVID-19'  
  3. ,xaxis_title = 'Dates'  
  4. ,yaxis_title = 'Number of Deaths'  
  5. ,font = dict(size = 25)  
  6. ,template = 'plotly_dark' #"plotly""plotly_white""plotly_dark""ggplot2""seaborn""simple_white""none"  
  7. )  
Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

2、條形圖

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

正如我們之前看到的,條形圖可以很快就可以組合起來:

  1. fig = px.bar(x=df1.index, y= df1[df1.columns[0]])  
  2. for i,n in enumerate(df1.columns):  
  3. fig.add_bar(x=df1.index, y= df1[df1.columns[i]], name= df1.columns[i])  
  4. fig.update_layout(  
  5. title = 'Daily Deaths due to COVID-19'  
  6. ,xaxis_title = 'Dates'  
  7. ,yaxis_title = 'Number of Deaths'  
  8. ,font = dict(size = 25)  
  9. ,template = 'plotly_dark' #"plotly""plotly_white""plotly_dark""ggplot2""seaborn""simple_white""none"  
  10. )  
  11. fig.show()  

3、餅狀圖

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

和以前一樣,唯一的區(qū)別是我們只顯示時間序列中的最新一天。

  1. df1 = df1.tail(1).transpose()  
  2. fig = px.pie(df1, values = str(df1.columns[0]), names = df1.index)  
  3. fig.update_traces(textposition='inside', textinfo = 'percent+label')  
  4. ddate = str(df1.columns[0])[:10] #時間戳  
  5. fig.update_layout(  
  6. title = f'Deaths on {ddate} due to COVID-19'  
  7. ,xaxis_title = 'Dates'  
  8. ,yaxis_title = 'Number of Deaths'  
  9. ,font = dict(size = 25)  
  10. ,template = 'seaborn' #"plotly""plotly_white""plotly_dark""ggplot2""seaborn""simple_white""none"  
  11. )  
  12. fig.show()  

交互控件

通過上文,我們知道了如何快速地將不同類型的可視化組合在一起,接下來我們用交互控件來增強數(shù)據(jù)的可視化。

1、范圍滑塊

首先,通過下面的一行代碼來添加一個范圍滑塊,這是一個很好用的控件,讓用戶看到自己控制想看的特定部分。

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化
 
  1. fig.update_xaxes(rangeslider_visible=True)  

2、范圍焦點

如果我們的用戶只想關(guān)注某個時間段里的某些部分呢?我們可以直接建立這些控件!

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化
 
  1.  fig.update_xaxes(  
  2. rangeslider_visible=True,  
  3. rangeselector=dict(  
  4. buttons=list([  
  5. dict(count=7, label="1w", step="day", stepmode="backward"),  
  6. dict(count=1, label="1m", step="month", stepmode="backward"),  
  7. dict(count=2, label="2m", step="month", stepmode="backward"),  
  8. dict(step="all")  
  9. ]),  
  10. font = dict( color='#008000', size = 11),  
  11. )  
  12. )  

3、自定義按鈕

在體驗了上面的范圍焦點功能后,我們可以很容易想象到如何構(gòu)建自定義按鈕。Plotly express 以一種簡單的方式滿足了這一需求。讓我們看看定制按鈕,把重點放在個別國家上。

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化
 
  1. fig.update_layout(  
  2. updatemenus=[  
  3. dict(  
  4. type="buttons",  
  5. direction="right",  
  6. active=0,  
  7. x=0.5,  
  8. y=1.03,  
  9. buttons=list([  
  10. dict(label=df1.columns[0],  
  11. method="update",  
  12. args=[ {"visible": [True, False, False, False, False]},  
  13. {'showlegend' : True}  
  14. ]),  
  15. dict(label=df1.columns[1],  
  16. method="update",  
  17. args=[ {"visible": [False, True, False, False, False]},  
  18. {'showlegend' : True}  
  19. ]),  
  20. dict(label=df1.columns[2],  
  21. method="update",  
  22. args=[ {"visible": [False, False, True, False, False]},  
  23. {'showlegend' : True}  
  24. ]),  
  25. dict(label=df1.columns[3],  
  26. method="update",  
  27. args=[ {"visible": [False, False, False, True, False]},  
  28. {'showlegend' : True}  
  29. ]),  
  30. dict(label=df1.columns[4],  
  31. method="update",  
  32. args=[ {"visible": [False, False, False, False, True]},  
  33. {'showlegend' : True}  
  34. ]),  
  35. dict(label='All',  
  36. method="update",  
  37. args=[ {"visible": [True, True, True, True, True]},  
  38. {'showlegend' : True}  
  39. ]),  
  40. ]),  
  41. )  
  42. ]  
  43. )  

4、下拉式菜單

如果你想在可視化數(shù)據(jù)中,獲得一個下拉菜單,就像注釋掉一行代碼一樣簡單。在這里,你只需注釋掉“type=”buttons“就可以:

Python也太好用了吧!一個plotly庫就能實現(xiàn)交互式數(shù)據(jù)可視化

結(jié)論

Plotly express絕對是一個非常棒的數(shù)據(jù)可視化工具,它非常容易獲取,使用起來也非常像Python。在這篇文章里,我們只是簡單地描述了它所提供的功能。我鼓勵你進一步探索這個Python庫,因為它具有無限可能性!

 

責(zé)任編輯:張燕妮 來源: 今日頭條
相關(guān)推薦

2021-06-09 11:26:37

BokehPython可視化

2021-08-11 09:33:15

Vue 技巧 開發(fā)工具

2011-06-13 18:54:12

2024-08-02 10:30:39

StreamlitPython庫數(shù)據(jù)驅(qū)動

2023-12-18 15:02:00

PyechartsPython數(shù)據(jù)可視化工具

2024-12-13 16:01:35

2015-10-14 17:59:53

Google數(shù)據(jù)探索交互開發(fā)

2024-04-01 11:53:42

PlotlyPython數(shù)據(jù)可視化

2022-08-26 09:15:58

Python可視化plotly

2020-12-31 10:29:05

數(shù)據(jù)可視化可視化工具編碼

2022-05-31 09:42:49

工具編輯器

2025-11-10 07:05:00

Python數(shù)據(jù)可視化數(shù)據(jù)

2023-09-19 15:44:03

Python數(shù)據(jù)可視化

2020-12-20 17:40:04

機器學(xué)習(xí)可視化網(wǎng)站算法

2020-12-11 08:00:00

數(shù)據(jù)可視化工具大數(shù)據(jù)

2017-01-05 15:06:23

2020-04-06 20:47:42

FishShellLinux

2020-06-29 15:40:53

PlotlyPython數(shù)據(jù)可視化

2025-04-01 08:30:00

Plotly數(shù)據(jù)可視化數(shù)據(jù)分析

2017-06-19 08:30:35

大數(shù)據(jù)數(shù)據(jù)可視化報表
點贊
收藏

51CTO技術(shù)棧公眾號

竹菊久久久久久久| wwww国产精品欧美| 欧洲成人在线视频| 日韩三级影视| 免费精品一区| 欧洲精品视频在线观看| 日本欧美亚洲| 国产精品无遮挡| 欧美高清中文字幕| 全部av―极品视觉盛宴亚洲| 国产精品视频500部| re久久精品视频| 国内精品在线一区| 亚洲**毛片| 色综合久久中文字幕综合网小说| 欧美风情在线视频| 精品国产一区二区三区久久久狼| 午夜激情电影在线播放| 日韩亚洲欧美高清| 亚洲制服国产| 日韩一级在线观看| 成人性生交大片免费看在线播放| 69av一区二区三区| 超碰在线观看免费版| 欧美tickling挠脚心丨vk| 伊人影院在线视频| 日韩欧美三级在线| 青青青草视频在线| 亚洲精品久久久久中文字幕欢迎你| 污污在线观看| 亚洲精品成人久久久| 涩涩网在线视频| 在线观看视频99| 精品麻豆剧传媒av国产九九九| 欧美精品久久久久a| 久久99性xxx老妇胖精品| 国产精品成人品| 女人香蕉久久**毛片精品| 国产精品免费一区二区三区在线观看| 国产亚洲精品v| 女女同性女同一区二区三区按摩| 成人免费三级在线| 天天爽人人爽夜夜爽| 亚洲福利电影网| 第三区美女视频在线| 777xxx欧美| 久久精品xxxxx| 欧美一级片一区| 亚洲一区二区三区涩| 99视频热这里只有精品免费| 中国免费黄视频| 欧美亚洲综合另类| 国产高清不卡| 国产精品成人久久久久| 久久久精品五月天| 亚洲色欲综合一区二区三区| 香蕉久久一区二区不卡无毒影院| 欧美v亚洲v| 97精品在线视频| 亚洲国产精品一区| 无码人妻丰满熟妇区96| 亚洲第一福利一区| 亚洲欧洲日本韩国| 国产精品成人观看视频国产奇米| 视频在线观看一区二区三区| 黄色一级二级三级| 欧美高清性hdvideosex| 日日夜夜精品视频| 久久av一区二区| 国产精品毛片无遮挡高清| 国产一区久久精品| 欧美一级高清免费播放| 青青国产91久久久久久| 啊啊啊好爽视频| 亚洲精品国产精品国产自| 久久香蕉精品香蕉| 激情一区二区三区| 国产精品无遮挡| 91av久久| 亚洲精品欧美一区二区三区| 99久久er热在这里只有精品15| 小草av在线播放| 久久亚洲电影天堂| 麻豆9191精品国产| 一级毛片免费看| 最近2019免费中文字幕视频三| 欧美久久影院| 成人看片app| 日韩精品在线观看网站| 中文字幕乱码亚洲无线精品一区 | 懂色一区二区三区av片| 99久久精品国产毛片| 香蕉视频在线播放| 琪琪亚洲精品午夜在线| 国产美女精品人人做人人爽| 欧美一区二区三区少妇| 久久99久久久久久久噜噜| 日本不卡高清视频| 四虎国产精品永远| 欧美性一区二区三区| a优女a优女片| 久久久成人的性感天堂| 奇米色777欧美一区二区| 在线播放av更多| 91成人在线视频| 成人激情综合网站| 在线观看中文字幕的网站| 国产拍精品一二三| 亚洲视频图片小说| 国产一区二区三区黄网站| 国产成人三级视频| 亚洲成人av资源网| 亚洲一区二区免费看| 国产专区在线播放| 亚洲精品免费一区二区三区| 亚洲一区二区五区| 一本久久青青| xxxx69视频| 奇米四色中文综合久久| 日韩一区欧美小说| 精品少妇一区| 污版网站在线观看| 日本欧美黄网站| 亚洲国产日日夜夜| 国产日韩欧美一区二区三区| 成人永久免费网站| 欧美在线播放视频| 一区二区三区小说| 第九色区aⅴ天堂久久香| 黄页视频在线免费观看| 国产精品久久精品| 亚洲成在线观看| 欧美在线免费| 日本高清视频在线观看| 日本一区美女| 亚洲免费高清视频| 成人午夜视频在线观看| 日本黄色一区| 免费日韩中文字幕| 91精品国产99| 亚洲一二三四在线| 午夜精彩国产免费不卡不顿大片| a中文在线播放| 图片区小说区区亚洲五月| 亚洲精品一区二区三区99| 国产精品一区二区在线观看网站| 六九午夜精品视频| 国产免费视频| 99视频在线播放| 欧美一区二区在线播放| 日韩成人一区二区三区在线观看| 好久没做在线观看| 成人在线观看你懂的| 葵司免费一区二区三区四区五区| 永久免费av在线| 91制片厂免费观看| 蜜臀久久99精品久久久无需会员 | 国产精品白丝一区二区三区| 天天干天天综合| 国产拍精品一二三| 欧美日韩精品一区二区天天拍小说 | 极品日韩av| 国产精品vvv| 丰满爆乳一区二区三区| 2019中文字幕在线免费观看| 亚洲国产毛片aaaaa无费看| 99人久久精品视频最新地址| 国产美女高潮在线| 九九热在线免费| 91九色国产社区在线观看| 欧美一三区三区四区免费在线看| 成人一区二区三区视频| 精品国产一区二区三区久久久蜜臀| 电影在线一区| 97免费视频观看| 国产精品对白刺激| 欧美大片拔萝卜| 久久这里只有精品首页| 中国成人一区| 亚洲淫成人影院| а√天堂www在线а√天堂视频| 欧美xxxx黑人又粗又长精品| 中文字幕精品网| 性做久久久久久久免费看| 日本aⅴ亚洲精品中文乱码| 成人高潮视频| av超碰免费在线| 污片在线免费看| 日本日本精品二区免费| 欧美疯狂xxxx大交乱88av| 欧美亚洲丝袜传媒另类| 久久久美女艺术照精彩视频福利播放 | 性欧美极品xxxx欧美一区二区| 91在线观看免费网站| 国产丝袜一区二区| 亚洲成人在线免费| 精品一区二区三区在线播放| 日韩电影免费网站| 人人玩人人添人人澡欧美| 岛国视频免费在线观看|