Python+Plotly繪制精美的數(shù)據(jù)分析圖
Plotly 是目前已知的Python最強(qiáng)繪圖庫,它比上次我們講的Echarts還強(qiáng)大許多許多,它的繪制通過生成一個(gè)web頁面完成,并且支持調(diào)整圖像大小,動(dòng)態(tài)調(diào)節(jié)參數(shù),方便許多python 網(wǎng)頁應(yīng)用的開發(fā)。
1.準(zhǔn)備
開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。
Windows環(huán)境下打開Cmd(開始—運(yùn)行—CMD),蘋果系統(tǒng)環(huán)境下請打開Terminal(command+空格輸入Terminal),準(zhǔn)備開始輸入命令安裝依賴。
當(dāng)然,我更推薦大家用VSCode編輯器,把本文代碼Copy下來,在編輯器下方的終端裝依賴模塊,多舒服的一件事?。?/p>
在終端輸入以下命令安裝我們所需要的依賴模塊:
pip install plotly
看到 Successfully installed xxx 則說明安裝成功。
2.使用
你只需要知道某些圖的生成函數(shù)及其傳入?yún)?shù),就可以生成很漂亮的統(tǒng)計(jì)圖。比如生成文章開頭的那個(gè)官方平行類別圖,你只要需要知道它的生成函數(shù)是 px.parallel_categories。支持的參數(shù)列表如下:
data_frame:數(shù)據(jù),需要以DataFrame格式。
color: 可指定每一列的特定顏色。
color_continuous_scale: 構(gòu)建連續(xù)的顏色
詳細(xì)參數(shù)可閱讀官方文檔
在這里,我們使用官方生成好的數(shù)據(jù)作為展示的例子,編寫以下代碼即可:
# 文件命名為:test.py import plotly.express as px tips = px.data.tips() fig = px.parallel_categories(tips, color="size", color_continuous_scale=px.colors.sequential.Inferno) fig.show()
效果如下:
在cmd/Terminal或者VSCODE的終端里,運(yùn)行這份代碼:
python test.py
你會(huì)看到瀏覽器自動(dòng)生成了一個(gè)頁面,頁面上就是這幅圖,而且是可以進(jìn)行交互的圖。
除此之外還有這樣的圖:
import plotly.express as px gapminder = px.data.gapminder() fig = px.scatter(gapminder.query("year==2007"), x="gdpPercap", y="lifeExp", size="pop", color="continent", hover_name="country", log_x=True, size_max=60) fig.show()
代碼如上,其實(shí)相當(dāng)簡單,你只需要符合它的scatter函數(shù)的數(shù)據(jù)格式就可以生成了,真的是坐著收圖啊。
還有以下這些例子,這些例子都是可以在頁面上進(jìn)行交互的(放大縮小等),相當(dāng)方便!
3.保存
其實(shí)在執(zhí)行完程序后生成的頁面里,右上角有個(gè)小攝像頭,點(diǎn)擊那個(gè)攝像頭可以直接生成頁面:
但是你可能會(huì)希望直接在程序中將圖片保存下載,方便批量生成圖片,這個(gè)時(shí)候我們需要添加類似這樣的一個(gè)離線plot語句
import plotly.offline as offline offline.plot(figure_or_data = fig, image ='png', image_filename='plot_image', output_type='file', image_width=800, image_height=600, validate=False)
在得到了圖像的Fig變量后,你只需要繼續(xù)編寫上述語句就可以保存下來,比如我們的第一個(gè)例子,將會(huì)是這樣保存的。
# 文件命名為:test.py import plotly.express as px import plotly.offline as offline tips = px.data.tips() fig = px.parallel_categories(tips, color="size", color_continuous_scale=px.colors.sequential.Inferno) fig.show() offline.plot(figure_or_data = fig, image = 'png', image_filename='plot_image', output_type='file', image_width=800, image_height=600, validate=False)
4.其他功能
1.共享:如果你希望能和其他人共享圖片,而自己又不會(huì)做web開發(fā),沒關(guān)系,plotly也提供了解決方案,這個(gè)時(shí)候我們需要安裝一個(gè)新的包叫chart_studio,然后使用官方給定的API進(jìn)行在線繪制,就能保存到你的plotly個(gè)人網(wǎng)頁中了!詳細(xì)可見官方教程
2.添加背景圖:你還可以給你的圖片添加背景圖!操作起來非常簡單。
3.添加你的LOGO:添加你個(gè)人獨(dú)特的LOGO也是支持的。
在https://plot.ly/python/images/你可以找到2和3的相應(yīng)教程!
以上就是Python+Plotly繪制精美的數(shù)據(jù)分析圖的詳細(xì)內(nèi)容,更多關(guān)于Python Plotly數(shù)據(jù)分析圖的資料請關(guān)注腳本之家其它相關(guān)文章!
- Python可視化工具Plotly的應(yīng)用教程
- python用plotly實(shí)現(xiàn)繪制局部放大圖
- Python使用Plotly繪制常見5種動(dòng)態(tài)交互式圖表
- Python利用plotly繪制正二十面體詳解
- Python進(jìn)行數(shù)據(jù)可視化Plotly與Dash的應(yīng)用小結(jié)
- 詳解如何使用Python的Plotly庫進(jìn)行交互式圖形可視化
- python使用Plotly創(chuàng)建交互式數(shù)據(jù)可視化的操作步驟
- Python?Plotly庫安裝及使用教程
- Python-Plotly庫實(shí)現(xiàn)數(shù)據(jù)動(dòng)態(tài)可視化的示例代碼
相關(guān)文章
Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼
這篇文章主要介紹了Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04使用python實(shí)現(xiàn)CNN-GRU故障診斷的代碼示例
這篇文章主要給大家詳細(xì)介紹了如何使用python實(shí)現(xiàn)CNN-GRU故障診斷,文章中有詳細(xì)的代碼示例,具有一定的參考價(jià)值,需要的朋友可以參考下2023-07-07python獲取全國最新省市區(qū)數(shù)據(jù)并存入表實(shí)例代碼
我們在開發(fā)中經(jīng)常會(huì)遇到獲取省市區(qū)等信息的時(shí)候,下面這篇這篇文章主要給大家介紹了關(guān)于python獲取全國最新省市區(qū)數(shù)據(jù)并存入表的相關(guān)資料,需要的朋友可以參考下2021-08-08Python的Flask路由實(shí)現(xiàn)實(shí)例代碼
這篇文章主要介紹了Python的Flask路由實(shí)現(xiàn)實(shí)例代碼,在啟動(dòng)程序時(shí),python解釋器會(huì)從上到下對代碼進(jìn)行解釋,當(dāng)遇到裝飾器時(shí),會(huì)執(zhí)行,并把函數(shù)對應(yīng)的路由以字典的形式進(jìn)行存儲(chǔ),當(dāng)請求到來時(shí),即可根據(jù)路由查找對應(yīng)要執(zhí)行的函數(shù)方法,需要的朋友可以參考下2023-08-08關(guān)于tf.nn.dynamic_rnn返回值詳解
今天小編就為大家分享一篇關(guān)于tf.nn.dynamic_rnn返回值詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01基于Linux系統(tǒng)中python matplotlib畫圖的中文顯示問題的解決方法
下面小編就為大家?guī)硪黄贚inux系統(tǒng)中python matplotlib畫圖的中文顯示問題的解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06