import matplotlib.pyplot as plt

#1
fig = plt.figure(facecolor='lightgrey', edgecolor='black', linewidth=2)

#2
axes = [fig.add_axes(rect=[0.05, 0.05, 0.4, 0.4]),
        fig.add_axes(rect=[0.05, 0.55, 0.4, 0.4]),
        fig.add_axes(rect=[0.55, 0.05, 0.4, 0.9])]

#3
colours = ['#66c2a5', '#fc8d62', '#8da0cb']

#4
for ax, colour in zip(axes, colours):
    ax.set_facecolor(colour)

fig.savefig('charts/change-background-colour.png', 
            bbox_inches='tight', dpi=300)