모자이크 다이어그램과 히트 맵을 결합한 다이어그램 만들기

아티팩트





코드


  • htps : // 기주 b. 코 m / 슈아 7 / mp ぇ 코데 푸 r 쿠 ぃ / b ぉ b / 뭐 r / 모사이 c_ 헤아 tma p / 모사이 c_p t_ an d_ p. 이 pyn b
  • %matplotlib inline
    import numpy as np
    import scipy as sp
    import pandas as pd
    import matplotlib.pyplot as plt
    import matplotlib.cm as cm
    import seaborn as sns
    
    from statsmodels.graphics.mosaicplot import mosaic
    from itertools import product
    
    def normalize_for_color(value, ratio):
        return max(min(value / ratio + 0.5, 0.99), 0.01)
    
    data = [
        ['A','a',2,-0.3],
        ['A','b',3,0.4],
        ['A','c',5,-0.7],
        ['B','a',2,0.8],
        ['B','b',2,-0.2],
        ['B','c',5,0.1]
    ]
    columns = ['Column1', 'Column2', 'area', 'value']
    df = pd.DataFrame(data=data, columns=columns)
    
    df['tuple'] = list(zip(df.Column1, df.Column2))
    df = df.set_index('tuple')
    df = df.drop(['Column1', 'Column2'], axis=1)
    data_dic = df.to_dict('index')
    
    props = lambda k: {'color': cm.coolwarm(normalize_for_color(data_dic[k].get('value'), 1.0))}
    labelizer = lambda k: "{0:+.02f}".format(data_dic[k].get('value'))
    mosaic(df.area, title='Mosaic Plot And Heat Map', properties=props, labelizer=labelizer, gap=0.005)
    plt.show()
    

    참고


  • htps //w w. s ts도도 ls. rg /에서 v / 흐릿하게 d / s 한 ts도에서 ls. g et al p cs. 모사이 cp t. 모사이 c. HTML
  • 좋은 웹페이지 즐겨찾기