首页   

比Matplotlib合并子图更方便!patchworklib让我告别PS拼图...

DataCharm  ·  · 5 月前
  • 前言

    • 一、一键合并多子图?!patchworklib是真好用
    • 二、可视化学习圈子是干什么的?
    • 三、系统学习可视化
    • 四、猜你喜欢

前言

今天是我的可视化课程上线的第239天,目前学员420人,每篇原创公众号都会记录这个人数,用来督促和激励我的原创内容。目前课程的主要方向是 科研、统计、地理相关的学术性图形绘制方法,后续也会增加商务插图、机器学等、数据分析等方面的课程。课程免费新增,这点绝对良心!

今天是我的可视化学习社群上线的第20天,目前学员124人,可视化学习社区以我的书籍《科研论文配图绘制指南-基于Python》为基础进行拓展,提供课堂式教学视频,还有更多拓展内容,可视化技巧远超书籍本身,书籍修正和新增都会分享到圈子里面(双十二进群就送作者签名版纸质书籍)~~

参与课程或者圈子的你将获取到:学员答疑、可视化资源分享、可视化技巧补充、可视化业务代做(学员和甲方对接)、副业交流、提升认知等等。

一键合并多子图?!patchworklib是真好用

有圈友向我提问,详细问题如下:

圈友提问

Python在可视化绘图这块虽然没有像R语言那样具有丰富的拓展工具包,但只要掌握核心的几个绘图工具包就可以完成99%的绘图任务啦!

既然有圈友提问,这边小编就给大家推荐一个非常好用Python语言中的的子图合并工具-「Patchworklib」,详细介绍如下:

  • Patchworklib简介

Patchworklib 是matplotlib 相关绘图(简单 matplotlib 绘图、Seaborn 绘图(轴级和图级)以及 plotnine 绘图)的通用合成器。该工具包的灵感来自 ggplot2 的 patchwork。因此,用户只需使用 /| 操作符即可轻松对齐 图形对象。Patchworklib比matplotib默认子图拼接方式subplot_mosaic 更直接、更灵活。

「PS」:Seaborn、Plotnine绘图对象都是可以直接拼接的。同时也支持最新版的Seaborn哦~

  • 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")
Patchworklib绘图样例01
ax1|ax2|ax4 操作结果
ax124/(ax3|ax5) 操作结果
(ax3/(ax2|ax1))|(ax5/ax4)操作结果
ax3/(ax2|ax1)操作结果
ax3214["ax3"]|ax5

更多关于Patchworklib包中的 |/ 语法操作,读者可参考:Patchworklib官网[1]

「PS」:更多关于Patchworklib包具体案例和其他实际使用场景,会陆续更新在我们的学习圈子中,感兴趣的读者可以和我们一起学习进步呀~~

可视化学习圈子是干什么的?

科研论文配图书籍学习圈子主要通过以下几个方面,给大家带来比纸质书籍更丰富的学习内容:

  • 直播教学,和读者零距离互动交流
  • 及时修正勘误和定期新增绘制知识点
  • 拓展衍生,绘图知识点远超书籍本身
  • 直播视频+拓展资料+答疑,学习更高效

「PS」:我们直播教学内容为课堂式教学,原作者带着大家对书籍一章、一节、一页的进行教学。而且直播的视频都会通过剪辑后整理成课程,圈子中的同学可以免费、反复观看。当然,新增内容和定期答疑,直播也是如此。

  • 为何会有这个书籍学习社群?无门槛的微信群难免会鱼龙混杂,问题和质量都无法得到保证,而且一些关键问题经常被淹没,且没有沉淀价值。

  • 随着添加我微信的人日益增多,向我提问的人也越来越多,随便回答一下就太不负责任了;不回答也不是很好;如果都仔细回答,我也有自己的工作并且确实很忙,真的有点心有余而力不足!所以我才会建立这么一个渠道来沉淀我的可视化技巧和分享经验,以及给大家提供一个坚持学习的平台。

双十二预售钜惠

对本公众号的读者,我们前50名订阅的直接减50元,也就是「249元/年」,再加一本作者签名版书籍

「!!就50份,数量有限!先到先得哦!」

PS:签名版邮寄,偏远地区不包邮哈。

微信扫码下方二维码就可以直接订阅啦,喜欢的同学这次千万不要错过啦!

微信扫码直接订阅,就50份,先到先得

「活动时间」:11月30日-12月12日

订阅之后添加助教老师微信,拉你进圈子成员群哈:

添加时备注 订阅圈子

系统学习可视化

当然,在学习数据可视化的道路上,你也有很多问题得不到解答,也可以加入我们的可视化课程(可视化系列课程推文)后,在学员群里和大家一起谈论,一起进步,或者直接向我提问。如果我觉得你的问题很具有普适性,我会把它写成文章发布在公众号上,让更多人看到,有关我们数据可视化系列课程的服务内容,可以参考下面的 阅读原文

猜你喜欢

Xarray,不用ArcGIS,所有地理空间绘图全搞定...
Nature都推荐的箱线图(Boxplot)绘制工具长啥样?免费、在线、灵活操作...?
集成Matplotlib、Bokeh、Plotly!这个交互式可视化工具这么强的吗?
完美解决Matplotlib绘图中、英文字体混显问题..
MATLAB绘图不好看?!不是,你是还没发现这几个工具包吧..
不是,这个地理数据工具这么强的吗?数据处理、可视化它都行..
这种环形图太难画?!带你一行代码搞定..
这种图太多人问了,绘制方法真的很简单..
不是,这封面图这么多人问的吗?教程来了
不用Seaborn,这个工具也能绘制超炫的统计图形···
NetworkX,网络结构图最强绘制工具·····
所有科研地理图形它都有,这个工具有点猛····
Nature、Science配图可以一键绘制?!我懵了···
节后第一天,就因为论文配图,被导师怼了一上午·····
plotnine,打死不学R语言, 我可以用Python到40岁.....
TUEplots,一天100张论文配图,导师惊了···

参考资料

[1]

Patchworklib官网: https://github.com/ponnhide/patchworklib。


推荐文章
清华大学智能法治研究院  ·  北京发布《关于更好发挥数据要素作用进一步加快 ...  ·  10 月前  
ratingdog  ·  YY | 信用一级日报  ·  3 年前  
© 2022 51好读
删除内容请联系邮箱 2879853325@qq.com