Wondering what packages are generally used to draw non-crossing partitions as matchings on either a line or an *n*-gon. I'm not finding any specific packages on ctan nor any `pgf/tikz` examples, but my guess is everyone just uses `tikz`.

Example of desired output:
[![a crossingless matching of 6 points on a line](https://i.stack.imgur.com/QvGYR.jpg)](https://i.stack.imgur.com/QvGYR.jpg)

Minimal working example:

```
\begin{tikzpicture}
\filldraw 
(0,0) circle (2pt)-- (1,0) circle (2pt) -- (2,0) circle (2pt) -- (3,0) 
circle (2pt) -- (4,0) circle (2pt) -- (5,0) circle (2pt);
\draw[-] (0,0) to[out=90,in=180] (1.5, 2) to [out=0, in=90] (3,0);
\draw[-] (1,0) to[out=90,in=180] (1.5,1) to [out=0,in=90] (2,0);
\draw[-] (4,0) to[out=90,in=180] (4.5,1) to [out=0,in=90] (5,0);
\end{tikzpicture}

```