code: def plot_connectivity_topos(layout='diagonal', topo=None, topomaps=None, fig=None):
      
  
      m = len(topomaps)
  
      if fig is None:
          fig = new_figure()
  
      if layout == 'diagonal':
          for i in range(m):
              ax = fig.add_subplot(m, m, i*(1+m) + 1)
              plot_topo(ax, topo, topomaps[i])
              ax.set_yticks([])
              ax.set_xticks([])
              ax.set_frame_on(False)
      else:
          for i in range(m):
              for j in [i+2, (i+1)*(m+1)+1]:
                  ax = fig.add_subplot(m+1, m+1, j)
                  plot_topo(ax, topo, topomaps[i])
                  ax.set_yticks([])
                  ax.set_xticks([])
                  ax.set_frame_on(False)
  
      return fig
docs: Place topo plots in a figure suitable for connectivity visualization.
  
      .. note:: Parameter `topo` is modified by the function by calling :func:`~eegtopo.topoplot.Topoplot.set_map`.
  
      Parameters
      ----------
      layout : str
          'diagonal' -> place topo plots on diagonal.
          otherwise -> place topo plots in left column and top row.
      topo : :class:`~eegtopo.topoplot.Topoplot`
          This object draws the topo plot
      topomaps : array, shape = [w_pixels, h_pixels]
          Scalp-projected map
      fig : Figure object, optional
          Figure to plot into. If set to `None`, a new figure is created.
  
      Returns
      -------
      fig : Figure object
          The figure into which was plotted.