Plot time in format 00:00:00
Show older comments
I am trying to plot time on the x-axis and on the y an amplitude (in this case 1 as an example) in the following format: however, following code breaks and an attempt to google led to datetime and prefixing that to the time format of not work nor did datestr
Plot([00:02:37.96469 00:02:38.93659], [1 1], ‘bx’)
4 Comments
Adam Danz
on 16 Aug 2019
@ nas , whenever you get an error message, please share the entire copy-pasted message (all of it). We need that info.
We also need to know what version of matlab you're using. You can check that by running ver().
What does your original data look like? How are you trying to convert it to datetime? You'll need to be much more descriptive about what you've tried and why it's not working.
nas illmatic
on 16 Aug 2019
Adam Danz
on 16 Aug 2019
Look at this.
>> [00:02:37.96469 00:02:38.93659]
ans =
Columns 1 through 22
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 0 2 4
Columns 23 through 39
6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38
Where did this ">> [00:02:37.96469 00:02:38.93659]<<" come from? Did you just type that in?
nas illmatic
on 16 Aug 2019
Answers (1)
Jess Lovering
on 14 Aug 2019
Have you tried to use the duration function?
plot(duration({'00:02:37.96469', '00:02:38.93659'}), [1 1], 'bx')
8 Comments
nas illmatic
on 16 Aug 2019
Walter Roberson
on 16 Aug 2019
That was changed in later releases; in your release
duration(0, 2, [37,38], [96469,93659]/100)
The conversion Jessica provided is fully functional.
duration({'00:02:37.96469', '00:02:38.93659'})
ans =
1×2 duration array
00:02:37 00:02:38
You mentioned "I just typed [the timestamps] in". If you typed them in as strings, this should work. We can't provide much help if we have no idea what type of data you're working with.
Could you show us your timestamps? The examples you showed previously are not matlab syntax.
Walter Roberson
on 16 Aug 2019
nas mentioned R2017a, at which time duration() did not accept character vectors for the time specification.
Adam Danz
on 16 Aug 2019
Ah, I didn't catch that.
nas illmatic
on 17 Aug 2019
Edited: nas illmatic
on 17 Aug 2019
Walter Roberson
on 17 Aug 2019
tr = duration(0,2, [37,38],[96469,93659]/100, 'Format', 'mm:ss.SSSSSS');
plot(tr, [1 1], 'bx')
Jess Lovering
on 19 Aug 2019
I use 2019a so I am not sure if this will be the same, but I am able to change the x-axis format with this command:
h = gca;
h.XAxis.TickLabelFormat = 'mm:ss.SSSSSS';
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!