4 Day temperature comparison, including current day

4 次查看(过去 30 天)
How can I include the current day in the 3 day temperature comparison.
[datetime('today')-days(0),datetime('today')], gives an error
  6 个评论
Mark Clark
Mark Clark 2019-2-5
'DateRange' value must have an end date and time later than the start date and time.
Error message when I use [datetime('today')-days(0),datetime('today')]
Guillaume
Guillaume 2019-2-5
Is that the full text of the error message. Usually it also states which line(s) is responsible for the error. This is essential information we need, particularly since I cannot see anywhere in your code where you use [datetime('today')-days(0),datetime('today')].
On the other hand the error message is clear. The two dates you pass must be different, with the second one later than the first. Of course, subtracting 0 days from a date doesn't change that data, so [datetime('today')-days(0),datetime('today')] is twice the same date.
It's unclear what you expected to do with that.

请先登录,再进行评论。

采纳的回答

Omer Yasin Birey
Omer Yasin Birey 2019-2-5
编辑:Omer Yasin Birey 2019-2-5
You can try to use the last minute of the current day, since it says starting date must be before than ending date
todayDate = datetime('today');
todayDate = todayDate + minutes(1439);
[datetime('today')-days(0),todayDate]
  4 个评论
Guillaume
Guillaume 2019-2-6
Well ok, it does create a datetime with a different display format. If that's the whole purpose of subtracting 0, then I would say it's a bad idea. First, you're relying on undocumented behaviour, so that may change in a future release without notice. Secondly, if you want a specific format you'd be better be explicit about the format you want. So even though, 'Format', 'dd, MMM, yyyy HH:mm:ss' might be longer, it's at least very clear what the intent of the code is. Subtracting 0 just to alter the format, with no comment explaining what the purpose is, is just asking for a bug to be introduced later on when a different maintainer notice that 0 subtraction and remove it.
In this particular case, where the array is just passed to another function, the format does not matter at all.
Yair Altman
Yair Altman 2019-2-6
编辑:Yair Altman 2019-2-6
I echo Guillaume's comment.
However, just for the record, it is typically faster to subtract a pure number rather than days(number). For example,
datetime('today')-1
is faster than
datetime('today')-days(1)
and yet has the same meaning/result. Just note that days(1) might be more readable.

请先登录,再进行评论。

更多回答(3 个)

KSSV
KSSV 2019-2-5
thedates = (datetime('today')-days(3):datetime('today'))'

Mark Clark
Mark Clark 2019-2-6
This is what Im trying to do. The today trace in the graph below.
CaptureAGT.PNG

Mark Clark
Mark Clark 2019-2-6
See https://thingspeak.com/channels/569794

社区

更多回答在  ThingSpeak Community

类别

Help CenterFile Exchange 中查找有关 Visualize Data 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by