sw-plotting-tool/graphPlotFnc.m
@CarlWachter 580e873d6f Increment UI removed when using CSV files with first row secs.
First Row Secs now uses start and stop times.
2023-01-17 19:35:24 +01:00

59 lines
1.8 KiB
Matlab

function graphPlotFnc(data, fileSettings, checkboxes, start, stop, yAxis, channels, path)
%Iterate through all channels
for channel = 1:width(data)
%If Graph is checked
if checkboxes{channel}.Value == 1
%Convert start and ending time
beginning = str2double(start{channel}.Value);
ending = str2double(stop{channel}.Value);
%if first row increment is not checked
if fileSettings{2}.Value == 0
[timeArray, yData] = timeAxisWithIncrement(data, fileSettings{3}.Value, beginning, ending, channel);
else
timeIndex = 1;
while data(timeIndex,1) < str2double(start{channel}.Value)
timeIndex = timeIndex + 1;
end
startIndex = timeIndex;
while data(timeIndex, 1) <= str2double(stop{channel}.Value) || timeIndex >= length(data)
timeArray(timeIndex - startIndex + 1) = data(timeIndex,1);
timeIndex = timeIndex + 1;
end
endIndex = timeIndex;
for timeIndex = startIndex:endIndex - 1
yData(timeIndex - startIndex + 1) = data(timeIndex, channel);
end
end
%Plot the channel
hold on
figure(channel)
plot(timeArray, yData);
ylabel(yAxis{channel}.Value);
xlabel('Time [s]');
title(channels{channel});
%Save plot
saveFigs('graph', figure(channel), channels(channel), path, fileSettings{1}.Value)
%reset
hold off;
close all;
end
end
end