def dict_splicer(plot_dict, Ld, Lx):
    """Dictionary constructor for plotting
	
	This function is a base-level function used by most other plotting functions to construct a list of dictionaries,
	each containing the passed arguments to the underlying plotting calls for each different dataset.
	
	Parameters
	----------
	plot_dict : dict
		Contains the parameters to be passed to the underlying plotting function.
	Ld : int
		Number of plots to be made.
	Lx : list
		Contains the lenght of the data array of each plot to be made.
	
	Returns
	-------
	dict_list : list
		List of dictionaries, one for each plot to be made.
	"""
    from numbers import Number
    dict_list = []
    dict_keys = plot_dict.keys()
    for i in range(Ld):
        temp_dict = {}
        for k in dict_keys:
            try:
                temp = (i for i in plot_dict[k])
            except TypeError:
                temp_dict[k] = plot_dict[k]
            else:
                if type(plot_dict[k]) is str or len(plot_dict[k]) == Lx[i]:
                    temp_dict[k] = plot_dict[k]
                elif (k in 'color' or 'color' in k) and (type(plot_dict[k]) is
                    str or isinstance(plot_dict[k][0], Number)):
                    temp_dict[k] = plot_dict[k]
                else:
                    temp_dict[k] = plot_dict[k][i]
        dict_list.append(temp_dict)
    return dict_list
