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.

25 visualizaciones (últimos 30 días)
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 comentarios
Caleb
Caleb el 13 de Sept. de 2012
Editada: Caleb el 13 de Sept. de 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)

Iniciar sesión para comentar.

Respuesta aceptada

Kevin Claytor
Kevin Claytor el 13 de Sept. de 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 comentarios
Caleb
Caleb el 13 de Sept. de 2012
Can I annotate the marker placed on the graph? I want to show the actual value and not just the location.
Caleb
Caleb el 13 de Sept. de 2012
Also, the curve has little to do with the data. I want to use the data to form the curve.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Distribution Plots en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by