在对数据帧中的值进行排序之前和之后,是否有什么好方法可以表示顺序更改?

我有一个Pandas数据框,我将在特定列上对其进行排序。如果要绘制数据以表示排序前后数据的变化情况,有什么好方法吗?

Before Sorting
ID ||| Map Score 
----------------
1  ||| 13
2  ||| 15
3  ||| 1
4  ||| 5
5  ||| 6
After  Sorting
ID ||| Map Score
----------------
2  ||| 15
1  ||| 13
5  ||| 6
4  ||| 5
3  ||| 1

我曾经考虑过使用Chord图(Python plotly模块),但是我只想知道是否还有更好的解决方案。 请指教。 谢谢!

评论
  • 流年换给
    流年换给 回复

    这是我想到的一种方式。在对DataFrame进行排序之前和之后使用条形图。虽然这可能不是最好的方法。

    df = pd.DataFrame({'ID': [1,2,3,4,5], 'Map Score': [13, 15, 1, 5, 6]})
    
    plt.bar(df['ID'], df['Map Score'], align='edge', width=-0.4, label='Before')
    df_sort = df.sort_values(by='Map Score', ascending=False)
    plt.bar(df['ID'], df_sort['Map Score'], align='edge', width=0.4, label='After')
    
    plt.ylabel('Map Score')
    plt.xlabel('ID')
    plt.legend()
    

    enter image description here