Re: [matplotlib-devel] Problem with violinplot

2015-07-06 Thread elmar werling
Hi Tom, tried to understand the internals of matplotlib during the weekend. Sorry, cound not figure out how matloblib works and where to catch the exceptions. It would be appreciated if someone of the dev group could add the special cases handling. Elmar On 04.07.2015 15:23, Thomas Caswell w

Re: [matplotlib-devel] Problem with violinplot

2015-07-04 Thread Thomas Caswell
Yes, that seems reasonable. @elmar you seem to have a pretty good grasp of the code and the use case, would you mind taking a crack at adding those special cases? Tom On Sat, Jul 4, 2015 at 8:58 AM elmar werling wrote: > having a look at seaborns ViolinPlotter class > (https://github.com/mwask

Re: [matplotlib-devel] Problem with violinplot

2015-07-04 Thread elmar werling
having a look at seaborns ViolinPlotter class (https://github.com/mwaskom/seaborn/blob/master/seaborn/categorical.py), they explicit handle the special case of "no data" and "single unique datapoint" at line 580 ff. Could something similar be added to matplotlibs violinplot? On 04.07.2015 12:2

Re: [matplotlib-devel] Problem with violinplot

2015-07-04 Thread elmar werling
from an end user point of view, matplotlibs violinplot should just do the same as seaborns violinplot. # import numpy as np import matplotlib.pyplot as plt import seaborn as sns N = 100 y1 = np.random.randn(N) + 3.0 y2 = np.ran

Re: [matplotlib-devel] Problem with violinplot

2015-07-03 Thread Thomas Caswell
The KDE computation code is a copy of the KDE code from scipy ( https://github.com/scipy/scipy/blob/master/scipy/stats/kde.py), I suggest raising this issue on their mailing list/github. I strongly suspect that violin plot should be doing data sanitation on the way in or catching exceptions like

[matplotlib-devel] Problem with violinplot

2015-07-03 Thread elmar werling
Hi all, violinplot is crashing with singular matrix data. See example. Is this behaviour for a singular matrix intended or just a bug? Cheers Elmar # import numpy as np import matplotlib.pyplot as plt # data mimicing the # original cumsum