I have a plot and i want to switch it to histogram ,how i can do it?
1 次查看(过去 30 天)
显示 更早的评论
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
回答(2 个)
Walter Roberson
2020-4-16
bar(mean([edges(1:end-1);edges(2:end)]),N)
This uses the center of the bin as the bar position.
0 个评论
Sean de Wolski
2020-4-16
Something like this
histogram(mat,edges,'Normalization','probability');
3 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Histograms 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!