如何在python中绘制facet网格(R中的ggplot)

时间:2016-01-13 08:59:58

标签: python r matplotlib ggplot2

我希望使用python(matplotlib)绘制下图。

enter image description here

我可以通过以下代码在R中执行此操作,

ggplot(delay.with.weather,
aes(x=pressure, y=dep.delay), na.rm = TRUE) + geom_point(na.rm = TRUE) +
facet_grid(season ~ ., scales="free") + stat_smooth(method=lm, na.rm = TRUE)

我的尝试如下,

plt.scatter(flights_combined.pressure,flights_combined.dep_delay)
plt.show()

我不能按季节列分组。也无法绘制回归线。有人可以帮我做这些吗?

1 个答案:

答案 0 :(得分:1)

我建议在matplotlib之上使用seaborn进行此类可视化,因为它可以很好地与Dataframes一起使用。

您可以通过以下方式实现的分组散点图:

grid = seaborn.FacetGrid(flights_combined, row='season')
grid.map(plt.scatter, 'pressure', 'delay')

有关详细信息,请参阅FacetGrid的文档。

如果你想要回归线,你可以手动完成它们(创建你自己的plt.scatter实现,适合并绘制数据的回归线),或者你可以找到一种方法来使用lmplotExample)与FacetGrid结合使用。