code: def plot_multiforecast_component(
      fcst,
      comp_name,
      plot_name=None,
      ax=None,
      figsize=(10, 6),
      multiplicative=False,
      bar=False,
      focus=1,
      num_overplot=None,
  ):
      """Plot a particular component of the forecast.
  
      Parameters
      ----------
          fcst : pd.DataFrame
              Output of m.predict.
          comp_name : str
              Name of the component to plot.
          plot_name : str
              Name of the plot Title.
          ax : matplotlib axis
              Matplotlib Axes to plot on.
          figsize : tuple
              Width, height in inches, ignored if ax is not None.
  
              Note
              ----
              Default value is set to ``figsize = (10, 6)``
  
          multiplicative : bool
              Set y axis as percentage
          bar : bool
              Make barplot
          focus : int
              Forecast number to portray in detail.
          num_overplot : int
              Overplot all forecasts up to num
  
              Note
              ----
              Default value is set to ``num_overplot = None`` -> only plot focus
  
      Returns
      -------
          matplotlib.artist.Artist
              List of Artist objects containing a particular forecast component
      """
      artists = []
      if not ax:
          fig = plt.figure(facecolor="w", figsize=figsize)
          ax = fig.add_subplot(111)
      fcst_t = fcst["ds"].dt.to_pydatetime()
      col_names = [
          col_name
          for col_name in fcst.columns
          if col_name.startswith(comp_name)
      ]
      if num_overplot is not None:
          assert num_overplot <= len(col_names)
          for i in list(range(num_overplot))[::-1]:
              y = fcst[f"{comp_name}{i + 1}"]
              y = y.values
              alpha_min = 0.2
              alpha_softness = 1.2
              alpha = alpha_min + alpha_softness * (1.0 - alpha_min) / (
                  i + 1.0 * alpha_softness
              )
              y[-1] = 0
              if bar:
                  artists += ax.bar(
                      fcst_t,
                      y,
                      width=1.00,
                      color="#0072B2",
                      alpha=alpha,
                  )
              else:
                  artists += ax.plot(
                      fcst_t, y, ls="-", color="#0072B2", alpha=alpha
                  )
      if num_overplot is None or focus > 1:
          y = fcst[f"{comp_name}{focus}"]
          y = y.values
          y[-1] = 0
          if bar:
              artists += ax.bar(fcst_t, y, width=1.00, color="b")
          else:
              artists += ax.plot(fcst_t, y, ls="-", color="b")
      # Specify formatting to workaround matplotlib issue #12925
      locator = AutoDateLocator(interval_multiples=False)
      formatter = AutoDateFormatter(locator)
      ax.xaxis.set_major_locator(locator)
      ax.xaxis.set_major_formatter(formatter)
      ax.grid(
          True, which="major", color="gray", ls="-", lw=1, alpha=0.2
      )
      ax.set_xlabel("ds")
      if plot_name is None:
          plot_name = comp_name
      ax.set_ylabel(plot_name)
      if multiplicative:
          ax = set_y_as_percent(ax)
      return artists
  
file_path: neural_prophet/neuralprophet/plot_forecast_matplotlib.py
imports: import logging
  import numpy
  from neuralprophet.plot_model_parameters_matplotlib import plot_custom_season, plot_daily, plot_weekly, plot_yearly
  from neuralprophet.plot_utils import set_y_as_percent
label_desc: Use image node_id 4 for calling a global function with example usage: plot_multiforecast_component(fcst, comp_name, plot_name, ax, figsize, multiplicative, bar, focus, num_overplot) and returns: artists