초보자라도 할 수 있다‼ Plotly에서 SankeyDiagram을 쉽게 작성하는 방법

SankyDiagram이란?



선키 다이어그램(영 Sankey diagram)은 공정간의 유량을 표현하는 도표이다.
화살표의 두께로 흐름의 양을 나타냅니다. 특히 에너지나 물자, 경비 등의 변위를 나타내는 데 사용된다.
출처 : Wikipedia

plotly (PlotlyExpress)로 구현하는 이점


  • 데이터 프레임을 읽을 수 있습니다.
  • 코드를 간단하게 쓸 수 있다.
  • 대화 형 그래프이므로 사용자가 이동할 수 있습니다

  • Plotly에서 SankeyDiagram 구현


    import pandas as pd
    import plotly.express as px
    
    # DF生成
    # 1行のデータが推移を表すようにデータフレームを作成する
    df =pd.DataFrame([['Cat1', 'CatA-2', 'AI', 'Normal'],
                      ['Cat1', 'CatA-3', 'AI', 'Normal'],
                      ['Cat1', 'CatA-3', 'No', 'NG'],
                      ['Cat3', 'CatA-3', 'Random', 'Normal'],
                      ['Cat3', 'CatA-5', 'Random', 'NG'],
                      ['Cat3', 'CatA-1', 'Random', 'NG'],
                      ['Cat3', 'CatA-1', 'No', 'NG']],
                    columns=['one','two','three',"output"])
    
    # カテゴリー変数をダミー変数に
    # データフレーム最終列が文字列だとエラー?
    df["output"] = pd.get_dummies(df["output"])
    
    fig = px.parallel_categories(df, 
                                 dimensions=['one','two','three','output'],
                                 color="output",
                                 color_continuous_scale=px.colors.diverging.BrBG,
                                 labels={'one':'FirstArea', 'two':'SecondArea', 'three':'ThirdArea','output':'output'}
                                )
    fig.show()
    
    

    좋은 웹페이지 즐겨찾기