def make_reachability_and_order(x, min_pts=9): # run the OPTICS algorithm on the points, using a min_pts value (0 = no min_pts) reach_dist, core_dist, order = amyxzhang.optics(x, min_pts) reach_plot = [] reach_points = [] for item in order: reach_plot.append(reach_dist[item]) #Reachability Plot reach_points.append([x[item][0],x[item][1]]) #points in their order determined by OPTICS return reach_plot, reach_points, order
def _make_reachability_plot_data(array, min_pts=9): reachability_plot = amyxzhang.optics(array, min_pts)[0] return list(map(list, enumerate(reachability_plot)))