我不是matplotlib的专家,所以我很难尝试设置scipy统计数据的参数。
我的代码采用 pandas df 列,遍历这些列,并尝试使用 stats.probplot 函数绘制列的值。这是我的代码:
plt.figure(figsize=(10,5))
for col in model_predictions.columns:
res = stats.probplot(df[col]), plot=plt)
plt.legend = col
plt.show()
这将生成我想要的图表,但难以阅读(没有图例,相同的颜色)。除了将它们绘制在彼此之上之外,我还想用不同的颜色绘制每条线,并为每条线添加一个图例,等于 col 中的 str。有什么办法可以做到这一点吗?
我总是可以获取函数的元组输出,由另一个新的 def 运行它,并将输出添加到新的熊猫 df 中(以后以更多控制绘制);但我想知道是否有更快的方法。
谢谢
您可以通过获取 stats.probplot
的输出来手动绘制它们,即:
from scipy.stats import probplot
for col in model_predictions.columns
plt.plot(*stats.probplot(df[col])[0], label=col)
plt.legend(loc='best')
plt.show()