在一个figure中画多个subplots
在做EDA和Data Visualization中常常会用到的一个code snippet,在这里以kaggle上的titianic数据为例子:
1 | # 先导入packages |
1 | # 导入数据 |
其中部分代码也可重写为如下:
1 | fig, ax = plt.subplots(nrows=1, ncols=2) |
也可以根据修改nrows
, ncols
参数来适用多行多列的情况:(这里举得这个例子只是为了举例而举例,没有过多实际意义)
1 | fig, ax = plt.subplots(nrows=2, ncols=2) |
当然也可以用循环来实现,在此不对这举例了。
中间还有2个小插曲,就是我实现的时候,发现ax[0, 0]
的subplot没有x_label
,所以还去StackOverflow上面提了个Question,发现仅仅是被hidden住了,加上一行plt.tight_layer()
代码即可。
1 | fig, ax = plt.subplots(nrows=2, ncols=2) |
还有就是hexo插图片时,若用markdown语法,说是文章在首页无法显示图片,点进去后仍可,所以只可采用最好用标签插件语法来实现,例如:
Reference
why-is-matplotlib-plotting-my-circles-as-ovals
how-to-set-the-labels-size-on-a-pie-chart-in-python
set-xlabel-is-in-invalid-in-ax0-0-when-drawing-4-subplots-in-one-plot