【发布时间】:2019-06-02 08:38:22
【问题描述】:
我不是 matplotlib 专家,所以我很难设置 scipy stats 的参数。
我的代码采用 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 运行它,然后将输出添加到新的 pandas df(以便以后用更多控制进行绘图);但我想知道是否有更快的方法。
谢谢
【问题讨论】:
-
在循环外创建一个图形和坐标区,并将坐标区作为
plot的参数传递,应该让它们都在同一个坐标轴上 -
scipy.stats.probplot 文档中的示例实际上展示了如何使用不同的子图。
-
谢谢。我知道如何使用不同的子图。我不想要不同的子情节,但都在同一个情节中。
-
将
plt.show放在循环之外 -
嗯,是的,使用单个子图或多个子图有什么区别?
标签: python pandas matplotlib scipy