猿问

如何更改此条形图上条形的顺序?

我正在使用 Seaborn 的计数绘图函数来绘制 Prosper Ratings。

用于创建情节的代码:


plt.figure(figsize = [10, 8])

sb.countplot(data = clean_loan_data, x = 'ProsperRating', color = base_color);

plt.xlabel('Prosper Rating')

plt.ylabel('Count')

plt.title('Prosper Rating Counts');

我要解决的问题是条的顺序。当前,顺序为 A、D、B、E、C、AA 和 HR。为什么这是固定顺序,我该如何更改?明确地说,我想移动每个栏及其标签。所需的顺序是 AA、A、B、C、D、E 和 HR。


aluckdog
浏览 117回答 1
1回答

收到一只叮咚

您可以通过参数设置顺序order=。如果您还想分配单独的颜色,请使用palette=:import matplotlib.pyplot as pltimport pandas as pdimport seaborn as snsimport numpy as npratings = ['AA', 'A', 'B', 'C', 'D', 'E', 'HR']colors = ['crimson', 'limegreen', 'dodgerblue', 'gold', 'blueviolet', 'darkturquoise', 'fuchsia']samples = np.repeat(ratings, np.random.randint(10, 100, len(ratings)))np.random.shuffle(samples)clean_loan_data = pd.DataFrame({'ProsperRating': samples})plt.figure(figsize=[10, 8])sns.countplot(data=clean_loan_data, x='ProsperRating', palette=colors, order=ratings)plt.xlabel('Prosper Rating')plt.ylabel('Count')plt.title('Prosper Rating Counts')plt.show()
随时随地看视频慕课网APP

相关分类

Python
我要回答