<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def plot_magnitude_time_scatter( catalogue, plot_error=False, fmt_string='o', filename=None, figure_size=(8, 6), filetype='png', dpi=300, ax=None):
 """ Creates a simple scatter plot of magnitude with time :param catalogue: Earthquake catalogue as instance of :class: openquake.hmtk.seismicity.catalogue.Catalogue :param bool plot_error: Choose to plot error bars (True) or not (False) :param str fmt_string: Symbology of plot """

    if ax is None:
        fig, ax = plt.subplots(figsize=figure_size)
    else:
        fig = ax.get_figure()

    dtime = catalogue.get_decimal_time()
    # pylint: disable=len-as-condition
    if len(catalogue.data['sigmaMagnitude']) == 0:
        print('Magnitude Error is missing - neglecting error bars!')
        plot_error = False

    if plot_error:
        ax.errorbar(dtime,
                    catalogue.data['magnitude'],
                    xerr=None,
                    yerr=catalogue.data['sigmaMagnitude'],
                    fmt=fmt_string)
    else:
        ax.plot(dtime, catalogue.data['magnitude'], fmt_string)
    ax.set_xlabel('Year')
    ax.set_ylabel('Magnitude')
    ax.set_title('Magnitude-Time Plot')

    _save_image(fig, filename, filetype, dpi)