Problem plotting with bar() instead of hist()

3 vues (au cours des 30 derniers jours)
John
John le 21 Jan 2013
Hi,
I use this code to overlay a CDf plot on a histogram. Note the histogram data in binned according to bin centers.
bin = 110:10:220;
[y2,x2] = ecdf(y);
[y1,x1] = hist(y,bin);
plotyy(x1,y1,x2,y2,@(x,y)bar(x,y,1,'c'),'stairs')
However, I need to bin the data using bin edges instead. I have tried using the histc function but cannot get the plot to display. You have to use the bar function in order to plot the histc data, but the bar function can only have 1 output argument. Could anybody help me out with the correct syntax for the plotyy fucntion now that I'm using the bar() instead of hist()?
Thank you
bin = 110:10:250;
histc(data,bin);
binneddata = ans / length(data)
[y2,x2] = ecdf(data);
[y1,x1] = bar(binneddata);
plotyy(x1,y1,x2,y2,@(x,y)bar(x,y,1,'c'),'stairs')
  3 commentaires
John
John le 21 Jan 2013
I don't, I'm just not sure what the output should be for bar(), I tried the code below but it is incorrect.
[y2,x2] = ecdf(data);
[y1] = bar(binneddata);
plotyy(x1,y1,y2,@(x,y)bar(x,y,1,'c'),'stairs')
Thanks
John
John le 22 Jan 2013
Modifié(e) : John le 22 Jan 2013
Hello Walter,
If you have minute would be in a position to advise me on the correct syntax for the plot function above?
Thank you

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 22 Jan 2013
bin = 110:10:250;
binneddata = histc(data,bin) ./ length(data);
[y2,x2] = ecdf(data);
plotyy(bin, binneddata, x2, y2, @(x,y)bar(x,y,1,'c'), 'stairs')
  1 commentaire
John
John le 22 Jan 2013
Thank you for your help.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by