尝试运行此代码时出现密钥错误0:
# Draw Plot
plt.figure(figsize=(13,10), dpi= 80)
sns.boxplot(x='demand', y='Price', data=df, notch=False)
# Add N Obs inside boxplot (optional)
def add_n_obs(df,group_col,y):
medians_dict = {grp[0]:grp[1][y].median() for grp in df.groupby(group_col)}
xticklabels = [x.get_text() for x in plt.gca().get_xticklabels()]
n_obs = df.groupby(group_col)[y].size().values
for (x, xticklabel), n_ob in zip(enumerate(xticklabels), n_obs):
plt.text(x, medians_dict[xticklabel]*1.01, "#obs : "+str(n_ob), horizontalalignment='center', fontdict={'size':14}, color='white')
add_n_obs(df,group_col='demand',y='Price')
# Decoration
plt.title('Box Plot', fontsize=22)
plt.ylim(10, 40)
plt.show()
我尝试使用seaborn提供的默认提示数据运行您的代码:
而且看起来效果不错。您确定您的数据帧变量df有'demand'和'Price'键吗?你知道吗
相关问题 更多 >
编程相关推荐