python?pyvis庫創(chuàng)建可視化交互式網(wǎng)絡圖
超酷的python庫pyvis
https://github.com/WestHealth/pyvis
pyvis 是一個用于創(chuàng)建和可視化交互式網(wǎng)絡圖的 Python 庫。
pyvis 可以在每個節(jié)點或每個邊緣的基礎上進行定制??梢詾楣?jié)點指定顏色、大小、標簽和其他元數(shù)據(jù)。
每個圖形都可以進行交互,允許拖動、懸停以及選擇節(jié)點和邊。
每個圖形的布局算法也可以進行調(diào)整,以允許嘗試渲染更大的圖形。
庫的安裝
我們可以直接使用 pip 來進行安裝。
pip install pyvis
創(chuàng)建網(wǎng)絡
首先,使用 pyvis 中的 Network 類創(chuàng)建一個 net。
net = Network( notebook=True, )
要在 Jupyter Notebook 上顯示圖表,請將 notebook 參數(shù)設置為 True。
添加節(jié)點
你現(xiàn)在可以向圖表添加節(jié)點。
net.add_node("Singapore") net.add_node("San Francisco") net.add_node("Tokyo") net.add_nodes(["Riga", "Copenhagen"], color=['lightgreen', 'yellow'])
函數(shù) add_node() 用來添加單個節(jié)點,而函數(shù) add_nodes() 則添加多個節(jié)點到圖中。
你還可以為這兩個函數(shù)設置可選的顏色參數(shù)來設置節(jié)點的顏色。
要顯示圖形,請使用 show() 函數(shù)。
net.show('mygraph.html')
添加邊
將節(jié)點添加到圖中后,你現(xiàn)在可以添加邊來連接節(jié)點。
net.add_edge("Singapore","San Francisco") net.add_edge("San Francisco","Tokyo") net.add_edges( [ ("Riga","Copenhagen"), ("Copenhagen","Singapore"), ("Singapore","Tokyo"), ("Riga","San Francisco"), ("San Francisco","Singapore"), ] ) net.show('mygraph.html')
函數(shù) add_edge() 添加連接兩個節(jié)點的單個邊,而函數(shù) add_edges() 接受連接各個節(jié)點的元組列表。
該圖現(xiàn)在顯示連接各個節(jié)點的邊。
嘗試拖動每個節(jié)點,看看它們在釋放后如何被拉回。
有向圖
如果你想要一個有向圖,你應該在 Network 類中設置有向參數(shù)。
net = Network( notebook=True, directed=True )
你現(xiàn)在應該看到一個有向圖。
修改圖形的物理特性
如果單擊并拖動圖表中的節(jié)點,你會注意到節(jié)點會四處彈跳。
當你釋放鼠標時,節(jié)點將彈回其原始位置。
你可以使用 repulsion() 函數(shù)自定義圖形背后的物理原理(它們?nèi)绾螐椈亍椈傻淖枘岬龋?/p>
以下語句顯示了 repulsion() 函數(shù)中所有參數(shù)的默認值。
net.repulsion( node_distance=100, central_gravity=0.2, spring_length=200, spring_strength=0.05, damping=0.09, )
以下是各個參數(shù)的用途。
node_distance,這是斥力的影響范圍。
central_gravity,將整個網(wǎng)絡拉向中心的重力吸引子。
spring_length,邊的剩余長度。
spring_strength,邊緣彈簧的強度。
阻尼,范圍從 0 到 1 的值,表示上一次物理模擬迭代中的速度有多少會延續(xù)到下一次迭代。
pyvis 庫最有趣的方面是它使你的網(wǎng)絡圖變得栩栩如生。交互式網(wǎng)絡圖非常適合社交網(wǎng)絡、公司結(jié)構(gòu)或你想要可視化實體之間關(guān)系的其他網(wǎng)絡。
以上就是 python pyvis庫創(chuàng)建和可視化交互式網(wǎng)絡圖的詳細內(nèi)容,更多關(guān)于python pyvis可視化交互式網(wǎng)絡圖的資料請關(guān)注腳本之家其它相關(guān)文章!
- python?spotlight庫簡化交互式方法探索數(shù)據(jù)分析
- Python數(shù)據(jù)分析庫PyGWalker的強大交互式功能界面探索
- Python?Pexpect庫自動化交互式進程控制的expect_list方法解析
- Python Pyvis庫創(chuàng)建交互式網(wǎng)絡圖實例探究
- Python Shiny庫創(chuàng)建交互式Web應用及高級功能案例
- Python?Streamlit制作交互式可視化網(wǎng)頁應用實例
- Gradio構(gòu)建交互式Python應用使用示例詳解
- python Dtale庫交互式數(shù)據(jù)探索分析和可視化界面
相關(guān)文章
Python中Flask-RESTful編寫API接口(小白入門)
這篇文章主要介紹了Python中Flask-RESTful編寫API接口(小白入門),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12Pycharm pyuic5實現(xiàn)將ui文件轉(zhuǎn)為py文件,讓UI界面成功顯示
這篇文章主要介紹了Pycharm pyuic5實現(xiàn)將ui文件轉(zhuǎn)為py文件,讓UI界面成功顯示,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04python 實用工具狀態(tài)機transitions
這篇文章主要介紹了python 實用工具狀態(tài)機transitions的使用,幫助大家更好的理解和學習python,感興趣的朋友可以了解下2020-11-11Python?xpath,JsonPath,bs4的基本使用
這篇文章主要介紹了Python?xpath,JsonPath,bs4的基本使用,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-07-07