又一个yyds的Python可视化神器

来源丨网络

一、问题

如果想把多个图合并放在一个图里,如图,该如何实现

好在R语言 和 Python 都有对应的解决方案, 分别是patchwork包和patchworklib库。

二、R语言

安装

# install.packages("devtools")   devtools::install_github("thomasp85/patchwork")   

两个图并排在一行,只需要导入patchwork, 然后相加即可

library(ggplot2)   library(patchwork)      p1 <- ggplot(mtcars) + geom_point(aes(mpg, disp))   p2 <- ggplot(mtcars) + geom_boxplot(aes(gear, disp, group = gear))      p1 + p2   

两行,第一行三个图,第二行一个图

p3 <- ggplot(mtcars) + geom_smooth(aes(disp, qsec))   p4 <- ggplot(mtcars) + geom_bar(aes(carb))      (p1 | p2 | p3) /         p4   

三、Python

Patchworklib 是与 matplotlib 相关的绘图(简单 matplotlib 绘图、Seaborn 绘图(轴级和图形级)和plotnine 绘图)的通用编辑器。这个库的灵感来自于 ggplot2 的patchwork。因此,作为原始拼凑,用户可以轻松地仅使用/|对齐 matplotlib 图。

Patchworklib 提供了该问题的解决方案。通过使用 patchworklib,任何类型的seaborn 和plotnine 图都可以作为matplotlib 子图进行处理。安装

pip3 install patchworklib   
import patchworklib as pw   import seaborn as sns       fmri = sns.load_dataset("fmri")   ax1 = pw.Brick(figsize=(3,2))   sns.lineplot(x="timepoint", y="signal", hue="region", style="event", data=fmri, ax=ax1)   ax1.legend(bbox_to_anchor=(1.05, 1.0), loc='upper left')   ax1.set_title("ax1")       titanic = sns.load_dataset("titanic")   ax2 = pw.Brick(figsize=(1,2))   sns.barplot(x="sex", y="survived", hue="class", data=titanic, ax=ax2)   ax2.move_legend(new_loc='upper left', bbox_to_anchor=(1.05, 1.0))   ax2.set_title("ax2")      ax12 = ax1|ax2   ax12.savefig("ax12.png")   

#省略 ax1、ax2、ax4绘制过程      ax124 = ax1|ax2|ax4   ax124.savefig("../img/ax124.png")   

#省略 ax124、ax3、ax5绘制过程   ax12435 = ax124/(ax3|ax5)   ax12435.savefig("../img/ax12435.png")   

万水千山总是情,点个 👍 行不行



[**👉 Python练手必备**](http://mp.weixin.qq.com/s?__biz=MzU3Mzk1ODA5OQ==&mid=2247507871&idx=1&sn=4d12f9b7542cd818b18f306eddf83844&chksm=fd3b2d23ca4ca4350d44264278e266fdeae4c89ae87d6af4a4628dec74183df5b42d89fe0b6e&scene=21#wechat_redirect)

[**👉**](http://mp.weixin.qq.com/s?__biz=MzU3Mzk1ODA5OQ==&mid=2247504388&idx=1&sn=0b4f676b049ce027cc1b81138c6164b2&chksm=fd3b20b8ca4ca9aea0a6c6b75467c4940cb8d38d649e88d8ace1cc1744ab2cbf6d34696a0d18&scene=21#wechat_redirect) [**Python毕设实战项目**](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzU3Mzk1ODA5OQ==&action=getalbum&album_id=2366210576835624964#wechat_redirect)

[**👉 Python爬虫实战必备**](http://mp.weixin.qq.com/s?__biz=MzU3Mzk1ODA5OQ==&mid=2247504388&idx=1&sn=0b4f676b049ce027cc1b81138c6164b2&chksm=fd3b20b8ca4ca9aea0a6c6b75467c4940cb8d38d649e88d8ace1cc1744ab2cbf6d34696a0d18&scene=21#wechat_redirect)

[****👉**** **30款Python小游戏附源码**](http://mp.weixin.qq.com/s?__biz=MzU3Mzk1ODA5OQ==&mid=2247507734&idx=1&sn=d2b52f43a92a126647e7df33b1af92fe&chksm=fd3b2daaca4ca4bcfbfd18c187c0cf3f190d4e9c44d999dd302f6e9e95bbc8ac6853f65d349c&scene=21#wechat_redirect)  

[****👉**** **Python清理微信单向好友神器**](http://mp.weixin.qq.com/s?__biz=MzU3Mzk1ODA5OQ==&mid=2247510399&idx=1&sn=b75c08743713f3c669fc2a1755537da1&chksm=fd3b5bc3ca4cd2d5a620bf53300d5ca7f2f0f85f10c24d8e9e6dbf047ee20efe907b0ae618b1&scene=21#wechat_redirect)


本文转自 https://mp.weixin.qq.com/s/g7Cb833fbmUhD_tRaDl6TQ,如有侵权,请联系删除。对于从来没有接触过编程的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

👉Python学习大纲👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

图片

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

点击下方安全链接前往获取

CSDN大礼包:《Python入门&进阶学习资源包》免费分享

👉Python实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

图片

图片

👉Python书籍和视频合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

图片

👉Python副业创收路线👈

图片

这些资料都是非常不错的,朋友们如果有需要《Python学习路线&学习资料》,点击下方安全链接前往获取

CSDN大礼包:《Python入门&进阶学习资源包》免费分享

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值