欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python數(shù)據(jù)可視化Pyecharts庫實現(xiàn)桑葚圖效果

 更新時間:2021年09月29日 16:37:43   作者:麥片加奶不加糖  
這篇文章主要介紹了Python數(shù)據(jù)可視化如何使用Pyecharts庫來實現(xiàn)桑葚圖效果圖,文中給出實現(xiàn)的示例代碼,有需要的朋友可以借鑒參考想,希望能夠有所幫助

首先介紹一下什么是桑葚圖?

桑基圖(Sankey diagram),即?;芰糠至鲌D,也叫?;芰科胶鈭D。

它是一種特定類型的流程圖,圖中延伸的分支的寬度對應(yīng)數(shù)據(jù)流量的大小,通常應(yīng)用于能源、材料成分、金融等數(shù)據(jù)的可視化分析。

因1898年Matthew Henry Phineas Riall Sankey繪制的“蒸汽機(jī)的能源效率圖”而聞名,此后便以其名字命名為“桑基圖”。

抓住桑葚圖的核心定義,是主要用語表現(xiàn)一個數(shù)據(jù)流的過程。其實,我們熟悉的Matplotlib中也可以畫出桑葚圖,可是看起來是不是有那么一點點丑? 如下所示:

本篇使用另外一個常用的可視化庫pyecharts來畫圖。

這里需要強調(diào)一下,pyecharts 分為v0.5.x 和 v1 兩個大版本,并且兩個版本是不兼容的。v 0.5.x 支持python2.7 和 3.4+ ,而v1 開始僅支持python 3.6+ ,在官方也分為兩個不同的文檔。

在網(wǎng)上對于v1 的資料和學(xué)習(xí)例子也非常多,本文就為還在使用v 0.5.x版本的同學(xué),提供幫助。本篇之后的例子,使用v 0.5.x版本。官方文檔

 首先使用熟悉的pip進(jìn)行安裝

pip install pyecharts

然后我們可以對照著官方文檔中的API介紹來學(xué)習(xí),需要引入 Sankey。

核心參數(shù)不同,主要是對桑葚圖的一些展示的配置。

基本思路我總結(jié)大概有三步:

1. 先申明使用sankey

sankey = Sankey("?;鶊D示例", width=1200, height=600)

2. 使用add 添加對sankey圖的配置信息

sankey.add(
    "sankey",
    nodes=j["nodes"],
    links=j["links"],
    line_opacity=0.2,
    line_curve=0.5,
    line_color="source",
    is_label_show=True,
    label_pos="right",
)

這里需要注意,nodes和links是必須參數(shù),相當(dāng)于桑葚圖中的結(jié)點和連接的邊。需要傳入一個List數(shù)據(jù),內(nèi)嵌字典數(shù)據(jù)格式,如下所示。這里的name、source、target和value都是固定的。

nodes = [
    {'name': 'category1'}, {'name': 'category2'}, {'name': 'category3'},
    {'name': 'category4'}, {'name': 'category5'}, {'name': 'category6'},
]
 
links = [
    {'source': 'category1', 'target': 'category2', 'value': 10},
    {'source': 'category2', 'target': 'category3', 'value': 15},
    {'source': 'category3', 'target': 'category4', 'value': 20},
    {'source': 'category5', 'target': 'category6', 'value': 25}
]

3. 最后render生成html文件展示

sankey.render()
 

最后給大家分享一個小例子:

def sankey_analysis():
    nodes = [{'name':'Cluster 1'}, {'name':'Cluster 2'},{'name':'Cluster 3'},              
{'name':'Young'},{'name':'Medium'},{'name':'Elder'}]
     
    result = np.array([
                   [130,151,188],
                   [735,462,670],
                   [711,625,881]])
 
    targets = ['Young', 'Medium', 'Elder']    
    links = []
 
    for i in range(0,3):
        for j in range(0,3):
            sub_dict ={}
            sub_dict['source'] = 'Cluster '+str(i+1)
            sub_dict['target'] = targets[j]
            sub_dict['value'] = result[i,j]
            links.append(sub_dict)
            
    pic = (Sankey(name, width=1200, height=600).add('', nodes, links,
    sankey_node_width=80,
    sankey_node_gap=5, 
    line_opacity=0.7,
    line_curve=0.5,
    line_color='source',
    is_label_show=True,
    is_random = True,                                              
    label_text_size=14,                   
    label_pos="inside"))    
    pic.render('sankey.html')

參考資料:

1. https://05x-docs.pyecharts.org/#/zh-cn/prepare

以上就是Python數(shù)據(jù)可視化Pyecharts庫實現(xiàn)桑葚圖效果的詳細(xì)內(nèi)容,更多關(guān)于Pyecharts庫實現(xiàn)桑葚圖的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何在Pycharm中制作自己的爬蟲代碼模板

    如何在Pycharm中制作自己的爬蟲代碼模板

    當(dāng)有很多個個網(wǎng)站想要爬時,每個爬蟲的代碼不一樣,但有某種聯(lián)系,這個時候可以抽出一部分通用的代碼制成模板,減少代碼工作量。本文將具體介紹如何實現(xiàn)這一模板,需要的可以參考一下
    2021-12-12
  • Python實戰(zhàn)購物車項目的實現(xiàn)參考

    Python實戰(zhàn)購物車項目的實現(xiàn)參考

    今天小編就為大家分享一篇關(guān)于Python實戰(zhàn)購物車項目的實現(xiàn)參考,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • python實現(xiàn)保存網(wǎng)頁到本地示例

    python實現(xiàn)保存網(wǎng)頁到本地示例

    這篇文章主要介紹了python實現(xiàn)保存網(wǎng)頁到本地示例,需要的朋友可以參考下
    2014-03-03
  • Python實現(xiàn)自定義異常實例

    Python實現(xiàn)自定義異常實例

    大家好,本篇文章主要講的是Python實現(xiàn)自定義異常實例,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • python標(biāo)準(zhǔn)庫壓縮包模塊zipfile和tarfile詳解(常用標(biāo)準(zhǔn)庫)

    python標(biāo)準(zhǔn)庫壓縮包模塊zipfile和tarfile詳解(常用標(biāo)準(zhǔn)庫)

    在我們常用的系統(tǒng)windows和Linux系統(tǒng)中有很多支持的壓縮包格式,包括但不限于以下種類:rar、zip、tar,這篇文章主要介紹了python標(biāo)準(zhǔn)庫壓縮包模塊zipfile和tarfile詳解(常用標(biāo)準(zhǔn)庫),需要的朋友可以參考下
    2022-06-06
  • pandas數(shù)據(jù)處理清洗實現(xiàn)中文地址拆分案例

    pandas數(shù)據(jù)處理清洗實現(xiàn)中文地址拆分案例

    因為后續(xù)數(shù)據(jù)分析工作需要用到地理維度進(jìn)行分析,所以需要把login_place字段進(jìn)行拆分成:國家、省份、地區(qū)。感興趣的可以了解一下
    2021-06-06
  • Python實現(xiàn)元素等待代碼實例

    Python實現(xiàn)元素等待代碼實例

    這篇文章主要介紹了python實現(xiàn)元素等待代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Python生成數(shù)字圖片代碼分享

    Python生成數(shù)字圖片代碼分享

    這篇文章主要介紹了Python生成數(shù)字圖片代碼分享,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • python學(xué)習(xí)VSCode使用技巧帶你進(jìn)入高效開發(fā)模式

    python學(xué)習(xí)VSCode使用技巧帶你進(jìn)入高效開發(fā)模式

    VsCode是一款開源的編輯器,擁有強大的功能,。由于擁有各種各樣的插件,這就使得VsCode可以做到的事情更多了。在使用的過程中,也是有很多技巧的,掌握一些技巧對于后期寫代碼也會輕松很多
    2021-09-09
  • python批量修改xml文件中的信息

    python批量修改xml文件中的信息

    大家好,本篇文章主要講的是python批量修改xml文件中的信息,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下的相關(guān)資料
    2022-01-01

最新評論