def METHOD_NAME(fname, title=None, grayscale=False):
    """Plot voltage trace from file.
    Parameters
    ----------
    fname : str or list
        Filename or list of filenames to load from
    title : str, optional
        Plot title
    grayscale : bool, optional
        Plot in grayscale
    Raises
    ------
    ValueError
    """
    import matplotlib.pyplot as plt
    if isinstance(fname, (list, tuple)):
        data = None
        for file in fname:
            if data is None:
                data = numpy.loadtxt(file)
            else:
                data = numpy.concatenate((data, numpy.loadtxt(file)))
    else:
        data = numpy.loadtxt(fname)
    if grayscale:
        line_style = "k"
    else:
        line_style = ""
    if len(data.shape) == 1:
        print(
            "INFO: only found 1 column in the file. \
            Assuming that only one neuron was recorded."
        )
        plotid = plt.plot(data, line_style)
        plt.xlabel("Time (steps of length interval)")
    elif data.shape[1] == 2:
        print(
            "INFO: found 2 columns in the file. Assuming \
            them to be node ID, pot."
        )
        plotid = []
        data_dict = {}
        for dat in data:
            if not dat[0] in data_dict:
                data_dict[dat[0]] = [dat[1]]
            else:
                data_dict[dat[0]].append(dat[1])
        for dat in data_dict:
            plotid.append(plt.plot(data_dict[dat], line_style, label="Neuron %i" % dat))
        plt.xlabel("Time (steps of length interval)")
        plt.legend()
    elif data.shape[1] == 3:
        plotid = []
        data_dict = {}
        g = data[0][0]
        t = []
        for d in data:
            if not d[0] in data_dict:
                data_dict[d[0]] = [d[2]]
            else:
                data_dict[d[0]].append(d[2])
            if d[0] == g:
                t.append(d[1])
        for d in data_dict:
            plotid.append(plt.plot(t, data_dict[d], line_style, label="Neuron %i" % d))
        plt.xlabel("Time (ms)")
        plt.legend()
    else:
        raise ValueError("Inappropriate data shape %i!" % data.shape)
    if not title:
        title = "Membrane potential from file '%s'" % fname
    plt.title(title)
    plt.ylabel("Membrane potential (mV)")
    plt.draw()
    return plotid