# Short answer:
# If you have too much white space between rows (or columns) of a figure
# with subplots, you can either shrink the vertical (or horizontal)
# dimensions of the figure with figsize so that they get more "squished"
# together, or you can adjust the margin around the subplots
fig, ax = plt.subplots(rows, cols, figsize=[24,12])
plt.subplots_adjust(bottom=0.3, top=0.7, hspace=0)