Temperature vs time plot
18 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to plot data vs temperature data from an external file:
fileID_A=fopen('discesa_salita.txt');
A = textscan(fileID_A,'%D %s');
time_A=A{1};
time=time_A(37:210) ;
temp_A=A{2};
temp=temp_A(37:210) ;
figure()
plot(time, temp);
But Matlab said: "Error using plot Invalid second data argument", what am I doing wrong?
4 commentaires
KSSV
le 14 Juin 2017
Class of time? class(time) gives what output? You need to convert it to certain format to plot.
Réponses (2)
KSSV
le 14 Juin 2017
time = {'00:00:00'
'00:00:01'
'00:00:02'
'00:00:03'
'00:00:04'
'00:00:05'} ;
temp = [26 ; 26 ; 26;26;26;26] ;
plot(second(time),temp) ;
0 commentaires
Peter Perkins
le 20 Juin 2017
You are likely to be much happier using readtable than textscan. Given that you've used '%D %s' as the format, your temperatures are read in as a cell array of char vectors, and plot isn't going to like that.
Try something like this:
t = readtable('discesa_salita.txt','ReadVariableNames',false); % best guess
t.Var1 - timeofday(t.Var1); % timestamps read as datetimes, convert to durations
t = t(37:210,:);
plot(time, temp);
Depending on what version of MATLAB, you may need to give readtable a format.
0 commentaires
Voir également
Catégories
En savoir plus sur Dates and Time dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!