change in histogram distributions

Hi, is it possible to flip a histogram around the peak value? I do not want to flip the axis. Just for performing some checks, I want to invert my distribution from negative skewness to positive skewness, keeping the mean value at its original value. any help is appreciated.

 Respuesta aceptada

Théophane Dimier
Théophane Dimier el 9 de Dic. de 2020
Editada: Théophane Dimier el 9 de Dic. de 2020
Hi!
It should be doing the following (considering that a is your input)
[counts,center]=hist(a);
bar(center,counts);
hold on
center_mirror=flip(center);
bar(center_mirror,counts);
This should plot the histogram and the mirrored histogram.
If you want to force it to rotate around the peak (conservation of the mode of the distribution):
[counts,center]=hist(a);
bar(center,counts);
hold on
[~,idx]=max(counts);
center_mirror=2*center(idx)-center;
bar(center_mirror,counts);
I hope it answers your question!

9 comentarios

Sumera Yamin
Sumera Yamin el 11 de Dic. de 2020
Hi, many thanks for your answer. Your second code is what i wanted to do. However i have a question, you are platting bars (with spaces in between the bars). How can i avoid the spaces between the bars and plot it as a normal histogram bins.
Théophane Dimier
Théophane Dimier el 11 de Dic. de 2020
Editada: Théophane Dimier el 11 de Dic. de 2020
you can change the width of the bar using the name-pair argument "LineWidth":
bar(center_mirror,counts,"BarWidth",1);
Sumera Yamin
Sumera Yamin el 11 de Dic. de 2020
i did not mean the width of bar, what i meant was the spacing between the bars. I want histogram bins to be next to each other. With bar, they have a spacig in between. i attached the figure for ref.
Théophane Dimier
Théophane Dimier el 11 de Dic. de 2020
Editada: Théophane Dimier el 11 de Dic. de 2020
It was "BarWidth" and not "LineWidth"... My bad. I have edited the original comment.
Sumera Yamin
Sumera Yamin el 11 de Dic. de 2020
right, i also see it now. many thanks for your help.
Théophane Dimier
Théophane Dimier el 11 de Dic. de 2020
You are welcome! Can you just close the question by accepting the answer, please?
Sumera Yamin
Sumera Yamin el 11 de Dic. de 2020
Editada: Sumera Yamin el 11 de Dic. de 2020
Yes of course. could you please explain what is "idx" and what is code doing? i want to integrate it in my original code and i cannot understand it, what if i want to use histogram instead of bar
Image Analyst
Image Analyst el 11 de Dic. de 2020
The cryptic idx should have been called something more explicit and descriptive, like "indexOfMax". Basically it's the first index (bin number) where the max value (mode) of the histogram appears. Does that explain it better.
Sumera Yamin
Sumera Yamin el 11 de Dic. de 2020
Editada: Sumera Yamin el 11 de Dic. de 2020
ok, thanks, i understood it now.

Iniciar sesión para comentar.

Más respuestas (0)

Preguntada:

el 9 de Dic. de 2020

Editada:

el 11 de Dic. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by