Time series graph with best fit line
4 views (last 30 days)
Show older comments
How can I make a time series graph with year on the x axis and temperature on the y-axis. I would like to add a best fit line to show the trend. The date of the data had converted into the matlab date format. But I would like to display as year(e.g. 1999) on my x axis.
0 Comments
Accepted Answer
Stephan
on 1 May 2018
Great,
always when i try to help people here i learn a lot ;-)
The files are attached. After converting to the correct datetime format i fitted a linear model. Not all values could be used - so the vectors have different length. Due to this the coefficients of the linear model are taken to calculate a new vector for the values of the trend line. After this operation the data can be plotted over the datetime in years.
I did this for one of the records I called "low". You can continue working according to this pattern.
I assume that these are daily maximum values and daily low values, respectively. Of course, one could also form the mean of these two values and continue to work with them - but that was not your question.
I hope I could help you.
Best regards
Stephan
2 Comments
More Answers (3)
Stephan
on 29 Apr 2018
Edited: Stephan
on 29 Apr 2018
Hi,
it took a little time to convert your .txt file to something matlab really could create a datetime-dataformat from ;-). File is attached. Is this correct so far? Do you start in the endof 1982 and look into the 2060's? If yes we could take the next step and think about, how the regression line could work.
The code so far is:
load('date_time_data.mat'); % file is attached . please check ;-)
subplot(2,1,1);
plot(datetime, temp);
subplot(2,1,2);
plot(datetime, temp,'+k', 'MarkerSize', 16, 'LineWidth',1.5);
ax = gca;
ax.XAxis.TickLabelFormat = 'yyyy';
Hope we are on the right way...
Best regards
Stephan
4 Comments
See Also
Categories
Find more on Dates and Time 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!