I pulled this out from bxpstats as I was hoping that box plots and violin plots would be able to handle the same data inputs, so I'm not really sure if it was intended to do what I'd say it does. What I have so far for this is
```
Reshapes either a non-empty list or a numpy array as a 2D collection.
If X is a list, then this returns X, possibly nested once so that the first
element of X is itself a list.
If X is a numpy array, then it is placed in a list so that each column of
X is an element of the list (unless X was a row vector). The elements of
the returned list are either 1D arrays or non-nested lists.
```