Contour map from hist3()?

4 views (last 30 days)
Sandy
Sandy on 14 Jun 2013
Commented: natprice on 5 Mar 2015
Contour map from hist3()?

Accepted Answer

Kelly Kearney
Kelly Kearney on 14 Jun 2013
Supply output variables to hist3:
[n,c] = hist3(X, [10 10]);
contour(c{1}, c{2}, n);
  3 Comments
Berks
Berks on 21 Oct 2014
Correction - it should be c{2} before c{1}:
contour(c{2}, c{1}, n)
not sure why - just that it works correctly this way, at least in R2013a.
natprice
natprice on 5 Mar 2015
Correction - it should be the transpose of n
contour(c{1}, c{2}, n.');
Example:
set(gcf,'renderer','opengl');
mu = [2 3];
SIGMA = [1 1.5; 1.5 3];
rng default; % For reproducibility
r = mvnrnd(mu,SIGMA,100);
xb = linspace(min(r(:,1)),max(r(:,1)),20);
yb = linspace(min(r(:,2)),max(r(:,2)),20);
[xx,yy]=meshgrid(xb,yb,20);
[n,c]=hist3(r,{xb yb});
figure()
hold on
plot(r(:,1),r(:,2),'m+')
contour(xx, yy, n.')
hist3(r,{xb yb},'FaceAlpha',.1);
view(3)

Sign in to comment.

More Answers (0)

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!