How to create a histogram for 12 months using a time table?

7 ビュー (過去 30 日間)
Wolfgang McCormack
Wolfgang McCormack 2021 年 5 月 21 日
コメント済み: Adam Danz 2021 年 6 月 10 日
Hi all,
I have a time table with 365 days (hourly). I want to create a histogram which shows how many values above 50 exists in each month. Could you please instruct me on how to do that?
The time table has multiple columns.
Thank you all in advance.
  1 件のコメント
Scott MacKenzie
Scott MacKenzie 2021 年 6 月 9 日
編集済み: Scott MacKenzie 2021 年 6 月 9 日
@Wolfgang McCormack Seems to me what you are really after is a bar chart: 1 bar for each month with the height of the bar equal to the number of values > 50 (recorded hourly in the month). Is that correct?
It would help if you posted the data so we can see the organization of the table and the sort of "values" that are in it.

サインインしてコメントする。

回答 (1 件)

Adam Danz
Adam Danz 2021 年 6 月 10 日
編集済み: Adam Danz 2021 年 6 月 10 日
% Create demo timetable
dates = datetime(1999,1,1,'Format','MMM') + hours(0:364*24)';
TT = timetable(dates, randi([25,75],size(dates)),'VariableNames',{'Data'});
% Add column indicating values of "Data" over 50
TT.IsOver = TT.Data > 50;
% Count number of values of 50 per month
MT = retime(TT,'monthly','sum')
MT = 12×2 timetable
dates Data IsOver _____ _____ ______ Jan 37770 371 Feb 33387 309 Mar 37413 363 Apr 35963 351 May 37326 363 Jun 36279 363 Jul 36980 351 Aug 37181 372 Sep 35649 342 Oct 36812 340 Nov 35912 354 Dec 36595 381
The resultant timetable MT contains the columns "IsOver" showing the number of values of "Data" that are over 50 for each row.
  1 件のコメント
Adam Danz
Adam Danz 2021 年 6 月 10 日
If your table is large, you can place the IsLarge column within its own table since that's the only column that you need to apply retime.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeDescriptive Statistics についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by