code: def _seaborn_viz_plot_time_series(
      df, col, result=None, decompose=False
  ):
      """Create timeseries visualization.
  
      Args:
          df: The dataframe
          col (str or [str]): Column of interest. Column datatype must be numerical.
          result: The statsmodels.tsa.seasonal.DecomposeResult object. Defaults to None.
          decompose: Set as True to decompose the timeseries with moving average. result must not be None. Defaults to False.
  
      Returns:
          The visualization
      """
      fig, ax = plt.subplots(
          figsize=(
              get_option("display.matplotlib.fig_width"),
              get_option("display.matplotlib.fig_height"),
          )
      )
  
      if isinstance(col, list):
          for i in col:
              fig = sns.lineplot(
                  x=df.index, y=df[i], legend="full", ax=ax
              )
          ax.legend(labels=col)
      elif isinstance(col, str) and not decompose:
          fig = sns.lineplot(
              x=df.index, y=df[col], legend="full", ax=ax
          )
      elif decompose:
          fig = _seaborn_viz_decomposition(df, result)
          plt.close()
      return fig
  
imports: import warnings
  from typing import Optional
  import matplotlib.pyplot
  import seaborn
  import pandas
  import numpy
  import plotly.graph_objs
  from plotly.subplots import make_subplots
  from plotly.offline import init_notebook_mode, iplot
  from data_describe.config._config import get_option
  from data_describe.backends import _get_viz_backend, _get_compute_backend
  from data_describe.compat import _is_dataframe, _compat, _requires, _in_notebook
label_desc: Use image node_id 13 for calling a global function with example usage: _seaborn_viz_plot_time_series(df, col, result, decompose) and returns: fig