Table of Contents
Fetching ...

Proximity Alert: Ipelets for Neighborhood Graphs and Clustering

Gitan Balogh, June Cagan, Bea Fatima, Auguste H. Gezalyan, Danesh Sivakumar, Arushi Srinivasan, Yixuan Sun, Vahe Zaprosyan, David M. Mount

Abstract

Neighborhood graphs and clustering algorithms are fundamental structures in both computational geometry and data analysis. Visualizing them can help build insight into their behavior and properties. The Ipe extensible drawing editor, developed by Otfried Cheong, is a widely used software system for generating figures. One particular aspect of Ipe is the ability to add Ipelets, which extend its functionality. Here we showcase a set of Ipelets designed to help visualize neighborhood graphs and clustering algorithms. These include: $\eps$-neighbor graphs, furthest-neighbor graphs, Gabriel graphs, $k$-nearest neighbor graphs, $k^{th}$-nearest neighbor graphs, $k$-mutual neighbor graphs, $k^{th}$-mutual neighbor graphs, asymmetric $k$-nearest neighbor graphs, asymmetric $k^{th}$-nearest neighbor graphs, relative-neighbor graphs, sphere-of-influence graphs, Urquhart graphs, Yao graphs, and clustering algorithms including complete-linkage, DBSCAN, HDBSCAN, $k$-means, $k$-means++, $k$-medoids, mean shift, and single-linkage. Our Ipelets are all programmed in Lua and are freely available.

Proximity Alert: Ipelets for Neighborhood Graphs and Clustering

Abstract

Neighborhood graphs and clustering algorithms are fundamental structures in both computational geometry and data analysis. Visualizing them can help build insight into their behavior and properties. The Ipe extensible drawing editor, developed by Otfried Cheong, is a widely used software system for generating figures. One particular aspect of Ipe is the ability to add Ipelets, which extend its functionality. Here we showcase a set of Ipelets designed to help visualize neighborhood graphs and clustering algorithms. These include: -neighbor graphs, furthest-neighbor graphs, Gabriel graphs, -nearest neighbor graphs, -nearest neighbor graphs, -mutual neighbor graphs, -mutual neighbor graphs, asymmetric -nearest neighbor graphs, asymmetric -nearest neighbor graphs, relative-neighbor graphs, sphere-of-influence graphs, Urquhart graphs, Yao graphs, and clustering algorithms including complete-linkage, DBSCAN, HDBSCAN, -means, -means++, -medoids, mean shift, and single-linkage. Our Ipelets are all programmed in Lua and are freely available.

Paper Structure

This paper contains 9 sections, 7 figures.

Figures (7)

  • Figure 1: (a) Place a point set in Ipe, (b) select the points, (c) choose a graph from the "Ipelets" menu, (d) enter a parameter value if prompted, (e) the resulting graph is drawn automatically.
  • Figure 2: (a) Nearest, (b) $k^{th}$-nearest, (c) $k$-nearest, (d) mutual nearest, (e) $k^{th}$-mutual, (f) $k$-mutual, (g) asymmetric nearest, (h) asymmetric $k^{th}$-nearest, (i) asymmetric $k$-nearest, and (j) furthest neighbor graphs. In each $k=3$.
  • Figure 3: (a) Relative neighbor, (b) Gabriel graph, (c) Urquhart graph, (d) $\varepsilon$-neighbor ($\varepsilon = 28$), (e) sphere of influence, and (f) Yao graph ($k = 5$).
  • Figure 4: (a) $k$-Means, (b) $k$-Means++, and (c) $k$-Medoids
  • Figure 5: (a) Single Linkage Clustering, (b) Complete Linkage Clustering
  • ...and 2 more figures