def METHOD_NAME(doc):
    source = ColumnDataSource(dict(x=[1, 2], y=[1, 1]))
    plot = Plot(height=400, width=400, x_range=Range1d(0, 1), y_range=Range1d(0, 1), min_border=0)
    plot.add_glyph(source, Circle(x='x', y='y', size=20))
    plot.tags.append(CustomJS(name="custom-action", args=dict(s=source), code=RECORD("data", "s.data")))
    def cb(event):
        item = event.item
        if item == "item_1_value":
            source.data = dict(x=[10, 20], y=[10, 10])
        elif item == "item_2_value":
            source.data = dict(x=[100, 200], y=[100, 100])
        elif item == "item_3_value":
            source.data = dict(x=[1000, 2000], y=[1000, 1000])
    button.on_event('menu_item_click', cb)
    doc.add_root(column(button, plot))