Wenn Sie erwarten, dass diese Zahlen vollständige Daten sind (und "vollständige Daten" meine ich zeitliche Punkte, die sowohl ein Datum als auch eine Uhrzeit enthalten), dann machen Sie beim Lesen der Excel-Tabelle wahrscheinlich etwas falsch. Aber da Sie nur über Stunden und Minuten sprechen, denke ich, dass Sie auf dem richtigen Weg sind und Sie nur die Zeit in Betracht ziehen wollen.
time = [
0.641238425925926
0.641932870370370
0.642627314814815
0.643321759259259
0.644016203703704
];
time_str = cellstr(datestr(data,'HH:mm:ss'));
Der obige Code einen 5-für-1-Zellen-Array von Zeichenvektoren erzeugen, das zum Plotten nicht gut ist. Wie Sie gesagt haben, wird datevec
Ihre Datetime-Werte teilen, und es ist auch nicht gut. Ich empfehle Ihnen, Ihre Werte in ihrem aktuellen numerischen Format zu behalten und sie zu verwenden, um Ihre x-axis
Punkte zu definieren. Sobald die Handlung gezogen wird, können Sie immer Ihre Strichbeschriftungen in ein lesbares Format konvertieren:
time = [
0.641238425925926
0.641932870370370
0.642627314814815
0.643321759259259
0.644016203703704
];
value = [
1
3
4
0
2
];
plot(time,value);
datetick('x','HH:mm:ss');
Wie man sehen kann, verliert diese die Sekunden Präzision wegen Rundung. So, um die höchstmögliche Präzision zu halten:
% ...
plot(time,value);
set(gca,'XTickLabel',cellstr(datestr(data,'HH:mm:ss')));