python 中的系数图

coefficient plot in python

我试图找到一种很好的方法来绘制 python 中的线性模型系数,我得到了以下结果:

import statsmodels.formula.api as sm
import seaborn as sns
import matplotlib as mpl
import matplotlib.pyplot as plt

f = 'change ~ close_r + close_f + close_f1 + close_f2 + gender + age + country_of_citizenship + country_of_origin + religion +ethnicity'
reg_results = sm.ols(f, data=data).fit().summary()

sns.set(style="ticks") 
mpl.rc("figure", figsize=(10, 15))

sns.coefplot(f,data,intercept=False);

这会产生以下丑陋的情节(您看不到 x 轴标签)。

如何旋转绘图使其垂直(即交换 y 轴和 x 轴以查看标签)?以及如何为系数添加自定义刻度名称(数据框中的默认名称除外)?

我也愿意接受其他 solutions/type 情节。

当我提出这个问题时,M Waskow 亲自给我的解决方案:

ax = plt.gca() plt.setp(ax.get_xticklabels(), rotation=90)

https://github.com/mwaskom/seaborn/issues/576

X 轴刻度标签可以用 plt.gca().set_xlabel(list_of_strings)

设置