def METHOD_NAME(self, spc_file):
    # use x-values as domain
    all_x = []
    for sub in spc_file.sub:
        x = sub.x
        # assume values in x do not repeat
        all_x = np.union1d(all_x, x)
    domain = Domain([ContinuousVariable.make("%f" % f) for f in all_x], None)
    instances = []
    for sub in spc_file.sub:
        x, y = sub.x, sub.y
        newinstance = np.ones(len(all_x))*np.nan
        ss = np.searchsorted(all_x, x)  # find positions to set
        newinstance[ss] = y
        instances.append(newinstance)
    y_data = np.array(instances).astype(float, order='C')
    return Orange.data.Table.from_numpy(domain, y_data