Need help with creating histogram

hello guys, yesterday i made a code and recived three values s1= -2.401, s2= -2.862, & s3= -3.205. Now i want to plot a histogram for these values with distance where s1 goes from 0.5m to 1m, s2 goes from 1m to 1.5m, and s3 goes from 1.5m to 2m.
I'm very new in matlab and need guidance on how to make histogram for situations like this. please help me. Thank you so much

Answers (2)

Geoff Hayes
Geoff Hayes on 1 Mar 2022
@Yash Raj Haldaniya - you perhaps want to defined the edges as indicated at bins with bin edges.

1 Comment

i'm actually very new into this.. can you recommand me any video or explain with some code? thank you

Sign in to comment.

Try this:
s1= -2.401;
s2= -2.862;
s3= -3.205;
data = [s1, s2, s3];
% s1 goes from 0.5m to 1m, s2 goes from 1m to 1.5m, and s3 goes from 1.5m to 2m.
edges = [-inf, 0.5, 1.0, 1.5, 2, inf];
histObject = histogram(data, edges);
grid on;
title('Histogram of s', 'FontSize', 20)
xlabel('Value', 'FontSize', 20)
ylabel('Count', 'FontSize', 20)
% Note: all values are negative and thus will all fall into the first bin.

3 Comments

it helped me alot in understanding how histogram works in matlab.. but this resultant histogram is not what i wanted. i want an histogram column of s1 height from 0.5 to 1 and then s2 height column from 1 to 1.5 and so on.
but still thank you for helping me understand histogram this much. I'll keep looking for more answer or videos till i get my desired histogram.
Then you don't want a histogram/distribution, you want a bar chart of the actual values:
s1= -2.401;
s2= -2.862;
s3= -3.205;
data = [s1, s2, s3];
bar(data);
grid on;
title('Values of s', 'FontSize', 20)
xlabel('Index', 'FontSize', 20)
ylabel('Value', 'FontSize', 20)
yes this is indeed what i wanted it to look like. I'm curious if there is any function to combine these bars and get a line graph?? you getting what i mean?

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!