code: def __plot_validation__(
      curve, classes, area, area_method, colors, markers
  ):
      """
      Plot input validation.
  
      :param curve: curve
      :type curve: pycm.Curve object
      :param classes: ordered labels of classes
      :type classes: list
      :param area: area flag
      :type area: bool
      :param area_method: numerical integral technique (trapezoidal or midpoint)
      :type area_method: str
      :param colors: color for each class in plot
      :type colors: list
      :param markers: plot marker
      :type markers: list
      :return: figure, axis and classes
      """
      try:
          from matplotlib import pyplot as plt
      except Exception:
          raise pycmPlotError(MATPLOTLIB_PLOT_LIBRARY_ERROR)
      if classes is None:
          classes = curve.classes
      if area:
          curve.area(method=area_method)
      if colors is not None and len(classes) != len(colors):
          raise pycmPlotError(PLOT_COLORS_CLASS_MISMATCH_ERROR)
      if markers is not None and len(classes) != len(markers):
          raise pycmPlotError(PLOT_MARKERS_CLASS_MISMATCH_ERROR)
      fig, ax = plt.subplots()
      return fig, ax, classes
  
imports: from __future__ import division
  from .pycm_error import pycmCurveError, pycmPlotError
  from .pycm_util import threshold_func, thresholds_calc, isfloat
  from .pycm_param import *
  from .pycm_obj import ConfusionMatrix
  from warnings import warn
  import numpy
label_desc: Use image node_id 2 for calling a global function with example usage: __plot_validation__(curve, classes, area, area_method, colors, markers) and returns: fig,  ax,  classes