matplotlib / mpl-probscale

Real probability scales for matplotlib
http://matplotlib.org/mpl-probscale
BSD 3-Clause "New" or "Revised" License
38 stars 9 forks source link

Probability plot missing data when using 'prob' option #81

Open jkmccaughey opened 2 years ago

jkmccaughey commented 2 years ago

Description

I generated 100 data points (norm.rvs) and plotted the results using probscale. I've got two plots -- one uses 'prob' and the other uses 'qq' for the y-axis. The plot that uses qq shows all the data, while the plot that uses prob does not show all the data.

What I Did

fig, (ax1, ax2) = pyplot.subplots(figsize=(12,6), ncols=2, sharex=False)
common_opts = dict(
    probax='y',
    datascale='linear',
    datalabel='',
    scatter_kws=dict(marker='o', linestyle='none')
)

df2 = norm.rvs(0,1,size=100)
fig = probscale.probplot(df2, ax=ax1, plottype='prob', bestfit=False, problabel='Probability', color='xkcd:ocean green', **common_opts)
fig = probscale.probplot(df2, ax=ax2, plottype='qq', bestfit=False, problabel='Standard Normal Quantiles', color='xkcd:blue gray', **common_opts)

What else?

If I set the y limits for the 'prob' case to something wider than the defaults, I can see the data points that were being left out.

Thanks, Joe NPP_prob_qq

jkmccaughey commented 2 years ago

Here's a more useful plot. Joe NPP_v2

phobson commented 2 years ago

Thanks for the report. Where N = 100 is right on the fence where the automatic limits are set.

Should be pretty easy to fix.