在单个图像中将多个图表包装在一起

时间:2018-04-29 12:38:57

标签: python plot facet-wrap

我试图将多个情节包装在一起,因为它们密切相关(使用1个连续和1个分类变量显示密度,按星期几分解,每天是不同的情节)。在R中,我可以使用grid.arrange()gridExtra中的facet_wrap将可视化包装在一起,以1个变量和包含所有绘图的图像的形式返回给用户。它看起来像这样:

All 7 of these plots are combined into 1 image, using <code>grid.arrange()</code>

我如何在Python中执行此操作?

2 个答案:

答案 0 :(得分:1)

是的,这可以使用matplotlib subplots来完成。请参阅此example

可以使用所需的行数和列数初始化可视化的布局。每个单元格将包含一个不同的子图。

fig, axes = plt.subplots(nrows=3, ncols=2, figsize=(7, 7))

答案 1 :(得分:1)

由于您暗示曾经使用过ggplot2facet_grid() / facet_wrap(),因此您应该签出plotnine。来自homepage

(ggplot(mtcars, aes('wt', 'mpg', color='factor(gear)'))
 + geom_point()
 + stat_smooth(method='lm')
 + facet_wrap('~gear'))

enter image description here

我是R用户很长时间,并且坦率地发现python的绘制环境有点混乱。我喜欢能够使用plotnine来利用过去的R经验,而不是重新学习车轮。

现在,需要注意的是,我要寻找一个真正的grid.arrange()来回答这个问题,因为方面不那么灵活。我希望一侧有6个迷你图,另一侧要有一个真正的独立图。这不会为我做那件事,但想想我还是会在::

时在这里添加答案