Getting Colorbar instance of scatter plot in pandas/matplotlib

后端 未结 2 1880
盖世英雄少女心
盖世英雄少女心 2020-12-06 02:40

How do I get the internally created colorbar instance of a plot created by pandas.DataFrame.plot?

Here is an example for generating a colored scatter plot:



        
2条回答
  •  太阳男子
    2020-12-06 03:20

    It's not quite the same but you could just plot using matplotlib:

    import matplotlib.pyplot as plt
    import pandas as pd
    import numpy as np
    import itertools as it
    
    # [ (0,0), (0,1), ..., (9,9) ]
    xy_positions = list( it.product( range(10), range(10) ) )
    
    df = pd.DataFrame( xy_positions, columns=['x','y'] )
    
    # draw 100 floats
    df['score'] = np.random.random( 100 )
    
    fig = plt.figure()
    ax = fig.add_subplot(111)
    
    s = ax.scatter(df.x, df.y, c=df.score, s=500)
    cb = plt.colorbar(s)
    cb.set_label('desired_label')
    
    ax.set_xlim( [-0.5,9.5] )
    ax.set_ylim( [-0.5,9.5] )
    
    plt.show()
    

提交回复
热议问题