海运条形图升序 [英] Seaborn Bargraph Ascending order

查看:17
本文介绍了海运条形图升序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,我有以下代码,它给出了以下输出

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=downending,它运行了,但是它不是按顺序运行的。我正试着按每个州的平均金额进行排序。此外,还有一种方法可以使州文本更大,也可以使贷款金额更大。提前感谢您!

推荐答案

据我所知,Seborn没有内置的通过聚合金额订购的方式。 然而, pandas 可以创建这样一个聚合和排序的列表,然后可以通过Seborn绘制出来。

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()

要包括表示置信区间的行,可以使用排序的聚合数据的顺序从原始数据创建条形图:

sns.barplot(x='addr_state', y='loan_amnt', order=agg_data.index, data=data)

这篇关于海运条形图升序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆