*plot lightcurve(s) given an list of magnitude, time pairs*

    **Key Arguments:**
        - ``log`` -- logger
        - ``lightCurves`` -- list of magnitude, time numPy arrays
        - ``polyOrder`` -- order of polynomial used to fit the model lightcurves extracted from spectra
        - ``pathToOutputDirectory`` -- path to the output directory

    **Return:**
        - None

def plotLightCurves(
        log,
        lightCurves,
        polyOrder,
        pathToOutputDirectory):
    """
    *plot lightcurve(s) given an list of magnitude, time pairs*

    **Key Arguments:**
        - ``log`` -- logger
        - ``lightCurves`` -- list of magnitude, time numPy arrays
        - ``polyOrder`` -- order of polynomial used to fit the model lightcurves extracted from spectra
        - ``pathToOutputDirectory`` -- path to the output directory

    **Return:**
        - None
    """
    ################ > IMPORTS ################
    ## STANDARD LIB ##
    ## THIRD PARTY ##
    import matplotlib.pyplot as plt
    import numpy as np
    ## LOCAL APPLICATION ##

    resultsDict = {}
    ################ > VARIABLE SETTINGS ######
    ################ >ACTION(S) ################
    ax = plt.subplot(111)
    curveDict = {}
    for curve in lightCurves:
        x = curve[1]
        y = curve[0]

        # CAUSE LIGHTCURVE GENERATION TO FAIL IF LESS THAN 5 POINTS EXTRACTED
        # FROM THE SPECTRA
        if len(x) <= 4:
            curveDict['poly'] = None
            continue

        order = polyOrder
        poly = np.polyfit(x, y, order)
        curveDict['poly'] = poly
        pOrder = np.poly1d(poly)
        polyString = "mxxx[i] = "
        polyStringMd = "\\\\(mag = "
        for i in range(0, order + 1):
            if i > 0 and poly[i] > 0:
                polyString += "+"
                polyStringMd += "+"
            polyString += """%s*pow(i,%s) """ % (poly[i], order - i)
            polyStringMd += """%s*time^{%s} """ % (poly[i], order - i)
        polyStringMd += "\\\\)"

        xp = np.arange(int(min(x)), int(max(x)), 0.2)
        ax.plot(x, y, '.', xp, pOrder(xp), '--')

    title = curve[5]
    # Shink current axis by 20%
    box = ax.get_position()
    ax.set_position([box.x0, box.y0, box.width * 0.8, box.height])
    ax.legend(loc='center left', bbox_to_anchor=(1, 0.5), prop={'size': 8})
    ax.titlesize = 'medium'   # fontsize of the axes title
    ax.labelsize = 'medium'  # fontsize of the x any y labels
    plt.xlabel("Days Relative to Peak")
    plt.ylabel("Magnitude")
    plt.title(title, fontsize='small',
              verticalalignment='bottom', linespacing=0.2)
    ax.invert_yaxis()

    fileName = pathToOutputDirectory + title.replace(" ", "_") + ".png"
    # mdPlotLink = """![%s_plot]\n\n[%s_plot]: %s\n\n""" % (title.replace(" ", "_"), title.replace(" ", "_"), fileName,)
    # curveDict['mdLink'] = mdPlotLink
    plt.savefig(fileName)
    plt.clf()  # clear figure

    return curveDict