Python matplotlib
设置多子图
设置多子图纵向间距
设置多子图横向间距
设置外边距
import matplotlib.pyplot as plt fig,axes = plt.subplots(null,2,figsize=(null,6),dpi=100,facecolor="w",sharex=True,sharey=False) # 遍历所有子图 for i,ax in enumerate(axes.flatten()): ax.text(0.5, 0.5, i, fontdict={'fontsize':20,}) # 对单一子图进行操作 axes[0,0].set_title('0,0 title')
add_subplot
先创建 fig 再单独添加子图。import matplotlib.pyplot as plt fig = plt.figure(figsize=(null,6),dpi=100,facecolor="w") ax1 = fig.add_subplot(null,2,1) ax4 = fig.add_subplot(null,2,4) ax1.text(0.3, 0.5, '2,2,1', fontdict={'fontsize':20,}) ax4.set_title('2,2,4 title')
subplot2grid
单独设置子图所占的行列比例。
import matplotlib.pyplot as plt fig = plt.figure(figsize=(null,8),dpi=100,facecolor="w") # 3*3 的网格;(0,0)位置开始,跨度为 1 行 1 列 ax1 = plt.subplot2grid((null,3),(null,0),colspan=1,rowspan=1) # 3*3 的网格;(1,0)位置开始,跨度为 1 行 2 列 ax2 = plt.subplot2grid((null,3),(null,0),colspan=2,rowspan=1) # 3*3 的网格;(1,2)位置开始,跨度为 2 行 1 列 ax3 = plt.subplot2grid((null,3),(null,2),colspan=1,rowspan=2) ax1.text(0.1, 0.5, '(null,0) rows 1, cols 1', fontdict={'fontsize':12,}) ax2.text(0.3, 0.5, '(null,0) rows 1, cols 2', fontdict={'fontsize':12,}) ax3.text(0.1, 0.5, '(null,2) rows 2, cols 1', fontdict={'fontsize':12,})
subplots_adjust
调整间距。left=0,right=1,top=1,bottom=0,
分别控制 上下左右
的位置。(整体边距)wspace=0.4,hspace=0.1
分别控制横向和纵向的子图间距。(子图间距)import matplotlib.pyplot as plt fig,axes = plt.subplots(null,2,figsize=(null,6),dpi=100,facecolor="#00CC67") # 遍历所有子图 for i,ax in enumerate(axes.flatten()): ax.text(0.5, 0.5, i, fontdict={'fontsize':20,}) # left 控制左边位置;wspace,hspace 控制子图间距 fig.subplots_adjust(left=0,right=1,top=1,bottom=0, wspace=0.4,hspace=0.1)
到此这篇关于Python matplotlib设置多子图、子图间距及外边距的几种方式的文章就介绍到这了,更多相关matplotlib设置多子图、子图间距、外边距内容请搜索插件窝以前的文章或继续浏览下面的相关文章希望大家以后多多支持插件窝!