I have a plot and i want to switch it to histogram ,how i can do it?
2 views (last 30 days)
Show older comments
clear all
numsteps=1000;
numwalks=1000;
stepmatrix = sign(rand(numwalks,numsteps)-0.5*ones(numwalks,numsteps));
posmatrix = (cumsum(stepmatrix,2))
mat=zeros(numwalks,1);
for j = 1:numwalks;
last = find(posmatrix(j,:)==0,1,'last');
if isempty(last)==0;
mat(j)=last;
end
end
mat
edges=-0.5:1:(numsteps+0.5)
[N,edges]=histcounts(mat,edges)
probability=N*(1/numwalks)
figure;
h1=plot(1:numsteps , probability(2:end));
figure
i write this code , and then i get what a plot like i want , but i want to plot it like a histogram
what should i add?
i try to add histogram(1:numsteps , probability(2:end)) but then i get an empty plot
Answers (2)
Walter Roberson
on 16 Apr 2020
bar(mean([edges(1:end-1);edges(2:end)]),N)
This uses the center of the bin as the bar position.
0 Comments
Sean de Wolski
on 16 Apr 2020
Something like this
histogram(mat,edges,'Normalization','probability');
3 Comments
See Also
Categories
Find more on Histograms in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!