Histogram using Date Stamps

32 views (last 30 days)
Sophia Salazar
Sophia Salazar on 26 Jul 2019
Commented: Sophia Salazar on 26 Jul 2019
I have three years of dates and I want to know how to make a histogram only taking months into consideration.
The data is in datestam format, so when I plot a histogram is separates the months for each year.
How do I do this?
Thanks!
  3 Comments
Sophia Salazar
Sophia Salazar on 26 Jul 2019
Sorry about the unclear question! My data is in date stamps (like this: 2012-01-21) , in datetime format.
I have three years, so when I plot a histogram as is, it produces 36 bars, one for each month in each year.
What I want is 12 bars, so for example, the January bar should include all January values for all three years.
Does this clear up my question?
Thanks for the quick response!
Adam Danz
Adam Danz on 26 Jul 2019
That's clearer! If you get stuck with the recommendation in my answer, leave a comment and I can try to help further.

Sign in to comment.

Accepted Answer

Guillaume
Guillaume on 26 Jul 2019
Oh, if it's the histogram of the dates you want, then groupsummary may not be the best tool (sorry Adam!)
histogram(yourdatetimevector.Month, 'BinMethod', 'integers')
  2 Comments
Adam Danz
Adam Danz on 26 Jul 2019
Just saw this after my ans update, no prob at all!
Sophia Salazar
Sophia Salazar on 26 Jul 2019
This worked beautifully! Thanks to both of you guys!

Sign in to comment.

More Answers (1)

Adam Danz
Adam Danz on 26 Jul 2019
Edited: Adam Danz on 26 Jul 2019
If your data are organized in a table or array, use groupsummary() (requires r2018a). The groupbin should be 'monthname'(see Guillaume's comment below). Then feed that summary data into historgram().
[update]
If you're just counting the number of months in a datetime vector, you can use month() along with histcounts().
% dt is your datetime vector
c = histcounts(month(dt),1:13);
mo = {'jan' 'feb' 'mar' 'apr' 'may' 'jun' 'jul' 'aug' 'sep' 'oct' 'nov' 'dec'};
histogram('categories',mo,'BinCounts',c)
  3 Comments
Sophia Salazar
Sophia Salazar on 26 Jul 2019
I'm not sure I completley understand how this works, or if it is compatible with datetime types. I don't understand how to apply groupsummary to my data based on looking at the examples on its page.
I'm using a 900000x1 datetime array.
Adam Danz
Adam Danz on 26 Jul 2019
@Sophia, see updated answer.

Sign in to comment.

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!