I have a plot and i want to switch it to histogram ,how i can do it?

1 vue (au cours des 30 derniers jours)
tasneem haikal
tasneem haikal le 16 Avr 2020
Commenté : Rena Berman le 14 Mai 2020
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

Réponses (2)

Walter Roberson
Walter Roberson le 16 Avr 2020
bar(mean([edges(1:end-1);edges(2:end)]),N)
This uses the center of the bin as the bar position.

Sean de Wolski
Sean de Wolski le 16 Avr 2020
Something like this
histogram(mat,edges,'Normalization','probability');
  3 commentaires
Walter Roberson
Walter Roberson le 16 Avr 2020
Yes, the original histogram is too fine grained to be useful.
tasneem haikal
tasneem haikal le 17 Avr 2020
thanks alooot

Connectez-vous pour commenter.

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by