class_docstr: Plot a group of elements in a grid layout based on a GridSpace element
  object.
class_docstr_tok: ["Plot","a","group","of","elements","in","a","grid","layout","based","on","a","GridSpace","element","object","."]
code: def generate_plot(self, key, ranges=None, is_geo=False):
      ranges = self.compute_ranges(self.layout, self.keys[-1], None)
      plots = [[] for r in range(self.cols)]
      for i, coord in enumerate(self.layout.keys(full_grid=True)):
          r = i % self.cols
          subplot = self.subplots.get(wrap_tuple(coord), None)
          if subplot is not None:
              plot = subplot.initialize_plot(
                  ranges=ranges, is_geo=is_geo
              )
              plots[r].append(plot)
          else:
              plots[r].append(None)
  
      # Compute final width/height
      w, h = self._get_size(subplot.width, subplot.height)
  
      fig = figure_grid(
          plots,
          column_spacing=self.hspacing,
          row_spacing=self.vspacing,
          share_xaxis=True,
          share_yaxis=True,
          width=w,
          height=h,
      )
  
      fig["layout"].update(title=self._format_title(key))
  
      self.drawn = True
  
      self.handles["fig"] = fig
      return self.handles["fig"]
  
imports: import param
  from holoviews.plotting.util import attach_streams
  from ...core import AdjointLayout, Empty, GridMatrix, GridSpace, HoloMap, NdLayout
  from ...core.options import Store
  from ...core.util import wrap_tuple
  from ...element import Histogram
  from ..plot import CallbackPlot, DimensionedPlot, GenericAdjointLayoutPlot, GenericCompositePlot, GenericElementPlot, GenericLayoutPlot
  from .util import configure_matching_axes_from_dims, figure_grid
label_desc: Use image node_id 3 for calling the GridPlot obj's underlying member method code with example usage: obj.generate_plot(key, ranges, is_geo) and returns: self