✊🏿 Black Lives Matter. Please consider donating to Black Girls Code today.
⚡️ Concerned about the grid? Kyle Baranko teaches how to predicting peak loads using XGBoost. Register for the August webinar!

Extra space between subplots and legend

I have a subplot figure with multiple plots and can’t seem to remove the extra space between the plots and legend. Is there any way to remove this extra space? Screenshot and code below.

fig = make_subplots(
    rows=6,
    cols=2,
    column_widths=[0.7, 0.3],
    specs=[[{'rowspan': 2, 'secondary_y': True}, {'rowspan': 3}],
           [None, None],
           [{'rowspan': 2}, None],
           [None, {'rowspan': 3}],
           [{'rowspan': 2}, None],
           [None, None]],
    shared_xaxes=True,
    horizontal_spacing=0.07,
    vertical_spacing=0.02
)

fig.add_trace(go.Scatter(x=[1, 2], y=[1, 2], name="(1,1)"), row=1, col=1, secondary_y=False)
fig.add_trace(go.Scatter(x=[2, 3], y=[2, 3], name="(2,3)"), row=1, col=1, secondary_y=True)
fig.add_trace(go.Scatter(x=[1, 2], y=[1, 2], name="(1,2)"), row=1, col=2)
fig.add_trace(go.Scatter(x=[1, 2], y=[1, 2], name="(2,1)"), row=3, col=1)
fig.add_trace(go.Scatter(x=[1, 2], y=[1, 2], name="(3,1)"), row=4, col=2)
fig.add_trace(go.Scatter(x=[1, 2], y=[1, 2], name="(5,1)"), row=5, col=1)

fig.update_xaxes(matches='x')
fig.update_xaxes(showgrid=False, row=1, col=1)
fig.update_xaxes(showgrid=False, row=1, col=2)
fig.update_xaxes(showgrid=False, row=3, col=1)
fig.update_xaxes(showgrid=False, row=4, col=2)
fig.update_xaxes(showgrid=False, row=5, col=1)

fig.update_yaxes(title_text='Plant Power (MW)', showgrid=False, zeroline=False, row=1, col=1, secondary_y=False)
fig.update_yaxes(title_text='Cumulative Energy Loss (MWh)', showgrid=False, zeroline=False, row=1, col=1, secondary_y=True)
fig.update_yaxes(title_text='Ambient Temperature (°C)', showgrid=False, zeroline=False, row=1, col=2)
fig.update_yaxes(title_text='Irradiance (W/m<sup>2</sup>)', showgrid=False, zeroline=False, row=3, col=1)
fig.update_yaxes(title_text='Wind Speed (m/s)', showgrid=False, zeroline=False, row=4, col=2)
fig.update_yaxes(title_text='Inverter AC Power (kW)', showgrid=False, zeroline=False, row=5, col=1)

fig.update_layout(
    margin=dict(
        l=0,
        r=0,
        b=0,
        t=20,
        pad=0,
        autoexpand=True
    ),
    paper_bgcolor='rgb(44, 58, 58)',
    plot_bgcolor='rgb(200, 58, 58)',
    font=dict(
        color='rgb(235, 232, 229)',
        family='Arial',
        size=12
    ),
)

config = {
    'displaylogo': False
}

fig.show(config=config)