Your perturbed and unperturbed scenarios draw the same figure on my machine (mpl v1.4.1).
The reason why you don't get any outliers is the following: Boxplot uses matplotlib.cbook.boxplot_stats under the hood to compute where everything will be drawn. If you look in there, you'll see this little nugget: # interquartile range stats['iqr'] = q3 - q1 if stats['iqr'] == 0: whis = 'range' When whis = 'range', the whiskers fall back to extending to the min an max. So that is at least the intent of the code. Open to a different interpretation of what should be happening, though. On Wed, Aug 26, 2015 at 1:08 AM, Paul Hobson <pmhob...@gmail.com> wrote: > Are you running python 2 or python 3? If you're on python 2, what happens > if you add "from __future__ import division" to the top of your script? > > On Tue, Aug 25, 2015 at 10:31 PM, chtan <ch...@unisim.edu.sg> wrote: > >> Hi, >> >> the outliers in the boxplot do not seem to be drawn in the following >> extreme >> scenario: >> Data Value: 1, Frequency: 5 >> Data Value: 2, Frequency: 100 >> Data Value: 3, Frequency: 5 >> >> Here, Q1 = Q2 = Q3, so IQR = 0. >> Data values 1 and 3 are therefore outliers according to the definition in >> the api >> (Refer to parameter "whis" under "boxplot": >> http://matplotlib.org/api/pyplot_api.html >> <http://matplotlib.org/api/pyplot_api.html> ) >> >> But the code below produces a boxplot that shows them as max-min whiskers >> (rather than fliers): >> >> import matplotlib.pyplot as plt >> data = 100 * [2] + 5 * [1] + 5 * [3] >> ax = plt.gca() >> bp = ax.boxplot(data, showfliers=True) >> for flier in bp['fliers']: >> flier.set(marker='o', color='gray') >> >> <http://matplotlib.1069221.n5.nabble.com/file/n46027/figure_1.png> >> >> >> What I though it would look like is obtained by perturbing half of the >> data >> points 2 to 2.000001: >> >> <http://matplotlib.1069221.n5.nabble.com/file/n46027/figure_2.png> >> >> >> Is this a bug or I'm not getting something right? >> >> rgds >> marcus >> >> >> >> -- >> View this message in context: >> http://matplotlib.1069221.n5.nabble.com/boxplot-behaviour-in-an-extreme-scenario-tp46027.html >> Sent from the matplotlib - users mailing list archive at Nabble.com. >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> Matplotlib-users mailing list >> Matplotlib-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> > >
------------------------------------------------------------------------------
_______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users