Temperature vs time plot
18 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
KSSV
2017 年 6 月 14 日
Class of time? class(time) gives what output? You need to convert it to certain format to plot.
回答 (2 件)
KSSV
2017 年 6 月 14 日
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 件のコメント
Peter Perkins
2017 年 6 月 20 日
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 件のコメント
参考
カテゴリ
Help Center および File Exchange で Dates and Time についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!