I want to plot a line over a bar graph that shows a smooth distribution and display the mean, median, and range of the data.

15 vues (au cours des 30 derniers jours)
First, how do I overlay information on a plot. I want to give the mean, median and range of a distribution inside the axes figure.
Also, how do I overlay a smooth line over my bar graph to give a more visually appealing view of the distribution?
  2 commentaires
Caleb
Caleb le 13 Sep 2012
Modifié(e) : Caleb le 13 Sep 2012
% create data
A = rand(1,10);
% plot data
bar(A);
% obtain statistics
meanA = mean(A);
medianA = median(A);
min = min(A)
max = max(A)

Connectez-vous pour commenter.

Réponse acceptée

Kevin Claytor
Kevin Claytor le 13 Sep 2012
You can use hold on to overlay plots (scaling factors 300, 150, 125 chosen to arbitrarily);
A = randn(1000,1);
hist(A)
hold on
x = linspace(-4,4);
plot(x,exp(-x.^2)*300,'r')
plot(meanA,150,'kd');
plot(medianA,150,'ko');
plot([min(A),max(A)],125,'ko');
Also, naming variables after functions (min = min(A)) is bad form.
  2 commentaires
Caleb
Caleb le 13 Sep 2012
Can I annotate the marker placed on the graph? I want to show the actual value and not just the location.
Caleb
Caleb le 13 Sep 2012
Also, the curve has little to do with the data. I want to use the data to form the curve.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Discrete Data Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by