def query()

in viz/utils.py [0:0]


def query(data, x, y, outlier=lambda x, y, d: False, **kwargs):
    out = {}
    for id in data:
        dict = id_to_dict(id)
        valid = True
        for k, v in kwargs.items():
            if v is None:
                if k in dict:
                    valid = False
                    break
            else:
                if k not in dict or dict[k] != v:
                    valid = False
                    break
        if valid:
            if x in dict:
                x_ = dict[x]
                y_ = data[id][y]
                if not outlier(x_, y_, data):
                    if x_ not in out:
                        out[x_] = []
                    out[x_].append(y_)
                else:
                    print(y_)

    return out