Plot and compare histograms; pretty by default

Compares multiple sets of data elegantly. Set bins and axis bounds to be appropriate for the data.
9,2K téléchargements
Mise à jour 16 sept. 2015

Afficher la licence

Note de l’éditeur : This file was selected as MATLAB Central Pick of the Week

Summary of what function does:
1) Automatically sets the number and range of the bins to be appropriate for the data.
2) Compares multiple sets of data elegantly on one or more plots, with legend or titles. It also graphs the mean and standard deviations. It can also plot the median and mode.
3) Outputs text with the useful statistics for each distribution.
4) Allows for changing many more parameters
Highlighted features (see below for details)
'boxplot' adds boxplots to the graphs
'separate' to plot each set on its own axis, but with the same bounds
'binfactor' change the number of bins used, larger value =more bins
'samebins' force all bins to be the same for all plots
'legend' add a legend in the graph (default for structs)
'noerror' remove the mean and std plot from the graph
'median' add the median of the data to the graph
'text' return many details about each graph even if not plotted
t = nhist(Y) bins the elements of Y into equally spaced containers
and returns a string with information about the distributions.
If Y is a cell array or a structure nhist will make graph the
binned (discrete) probability density function of each data
set for comparison on the same graph. It will return A cell
array or structure which includes a string for each set of

[t, N, X]= nhist(...) also returns the number of items in each bin, N,
and the locations of the left edges of each bin. If Y is a
cell array or structure then the output is in the same form.

nhist(Y,'PropertyName', . . . )
nhist(Y,'PropertyName',PropertyValue, . . . )

% Examples
Cell array example:

Structure example:,10^5);^3,1)+1;
nhist(A,'color',[.3 .8 .3],'separate','median','noerror')

Citation pour cette source

Jonathan C. Lansey (2024). Plot and compare histograms; pretty by default (, MATLAB Central File Exchange. Récupéré le .

Compatibilité avec les versions de MATLAB
Créé avec R2009a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
En savoir plus sur Data Distribution Plots dans Help Center et MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Publié le Notes de version

Updated default bin parameter and implemented better handling of empty sets.
General update with axis tweaks etc.

Officially added boxplot (box and whiskers plot) to the graphs

Fixed minor colormap issue for 'colorm' option.

Fixed the colors so that they look really great with the help of You also have the option to set your own colors now.

changed the name of the function to be more clear

I improved the aesthetic choice of axis bounds in cases when some of your plots have no data.

I have implemented robust handling of NaN and inf data points. Changed underscores in struct field names "_" to spaces in the titles and legends.

Expanded the function to allow data points which are infinite (in value, not in number!)

implemented ''npoints' for passing in structures.

Added an option to plot a smooth fit instead of the default stairs function (Rob' suggestion).

I forgot to include the linspecer function, sorry!