繁体   English   中英

Seaborn 条形图升序

[英]Seaborn Bargraph Ascending order

您好,我有以下代码,它给了我以下 output 基于状态的平均贷款金额条形图

plt.figure(figsize=(30,18))
sns.barplot(x='addr_state', y = 'loan_amnt', data=data, ci= None, estimator=mean)
plt.xlabel("State", size=15)
plt.ylabel("Average Loan Amount", size=15)
plt.tight_layout()

我正在尝试使订单降序,但是每当我运行代码时,我都会不断收到错误消息,但是我删除 order = descending 它会运行,但它不是按顺序排列的。 我正在尝试按每个 state 的平均数量对其进行排序。 还有一种方法可以使 state 文本以及贷款金额更大。 先感谢您!

据我所知, Seaborn 没有内置的方式来通过聚合进行订购。 然而,Pandas 可以创建这样一个聚合和排序列表,然后可以通过 Seaborn 绘制该列表。

import pandas as pd
import numpy as np
import seaborn as sns
from matplotlib import pyplot as plt

N = 200
data = pd.DataFrame({'addr_state': np.random.choice(list('abcdefghijklmnopqrst'), N),
                     'loan_amnt': np.random.uniform(1000, 10000, N)})
agg_data = data.groupby('addr_state').aggregate('mean').sort_values('loan_amnt', ascending=False)

plt.figure(figsize=(10, 5))
sns.barplot(x=agg_data.index, y='loan_amnt', data=agg_data)
plt.xlabel("State", size=15)
plt.ylabel("Average Loan Amount", size=15)
plt.tight_layout()
plt.show()

示例图

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM