class_docstr: :class:`~pyqtgraph.GraphicsLayout` that automatically generates a grid of
  plots from a MetaArray.
  
  .. seealso:: :class:`~pyqtgraph.MultiPlotWidget`: Widget containing a MultiPlotItem
class_docstr_tok: [":","class",":","`","~pyqtgraph.GraphicsLayout","`","that","automatically","generates","a","grid","of","plots","from","a","MetaArray",".","..","seealso",":",":",":","class",":","`","~pyqtgraph.MultiPlotWidget","`",":","Widget","containing","a","MultiPlotItem"]
docstr: Plot the data from a MetaArray with each array column as a separate
  :class:`~pyqtgraph.PlotItem`.
  
  Axis labels are automatically extracted from the array info.
  
  ``plotArgs`` are passed to :meth:`PlotItem.plot
  <pyqtgraph.PlotItem.plot>`.
docstr_tok: ["Plot","the","data","from","a","MetaArray","with","each","array","column","as","a","separate",":","class",":","`","~pyqtgraph.PlotItem","`",".","Axis","labels","are","automatically","extracted","from","the","array","info",".","``","plotArgs","``","are","passed","to",":","meth",":","`","PlotItem.plot","<","pyqtgraph.PlotItem.plot",">","`","."]
code: def plot(self, data, **plotArgs):
      """Plot the data from a MetaArray with each array column as a separate
      :class:`~pyqtgraph.PlotItem`.
  
      Axis labels are automatically extracted from the array info.
  
      ``plotArgs`` are passed to :meth:`PlotItem.plot
      <pyqtgraph.PlotItem.plot>`.
      """
      # self.layout.clear()
  
      if hasattr(data, "implements") and data.implements("MetaArray"):
          if data.ndim != 2:
              raise Exception(
                  "MultiPlot currently only accepts 2D MetaArray."
              )
          ic = data.infoCopy()
          ax = 0
          for i in [0, 1]:
              if "cols" in ic[i]:
                  ax = i
                  break
          # print "Plotting using axis %d as columns (%d plots)" % (ax, data.shape[ax])
          for i in range(data.shape[ax]):
              pi = self.addPlot()
              self.nextRow()
              sl = [slice(None)] * 2
              sl[ax] = i
              pi.plot(data[tuple(sl)], **plotArgs)
              # self.layout.addItem(pi, i, 0)
              self.plots.append((pi, i, 0))
              info = ic[ax]["cols"][i]
              title = info.get("title", info.get("name", None))
              units = info.get("units", None)
              pi.setLabel("left", text=title, units=units)
          info = ic[1 - ax]
          title = info.get("title", info.get("name", None))
          units = info.get("units", None)
          pi.setLabel("bottom", text=title, units=units)
      else:
          raise Exception(
              "Data type %s not (yet?) supported for MultiPlot."
              % type(data)
          )
  
imports: from .None import GraphicsLayout
label_desc: Use image node_id 2 for calling the MultiPlotItem obj's underlying member method code with example usage: obj.plot(data) without return types