Skip to content
Snippets Groups Projects
plot_SalTempVel.m 2.21 KiB
Newer Older
function plot_SalTempVel( hTsgGUI, hAxes )
% Function to plot the Salinity, Temperature TSG data as well as the
% ship velocity
%
% Input
% -----
% hTsgGUI ............ Handel to the main user interface
% hPlotAxes .......... Handels to the 3 graphic axes
%
% Output
% ------
% $Id$

% Retrieve named application data
% -------------------------------
tsg = getappdata( hTsgGUI, 'tsg_data');

% Plot the Salinity with the right color code
% -------------------------------------------
axes( hAxes(1));

ind = find(tsg.SSPS_QC <= tsg.qc.Code.NO_CONTROL );
plot(hAxes(1), tsg.DAYD(ind), tsg.SSPS(ind), ...
               strcat('.',tsg.qc.Color.NO_CONTROL));
ind = find(tsg.SSPS_QC == tsg.qc.Code.GOOD );
plot(hAxes(1), tsg.DAYD(ind), tsg.SSPS(ind), ...
               strcat('.',tsg.qc.Color.GOOD));
ind = find(tsg.SSPS_QC == tsg.qc.Code.PROBABLY_GOOD );
plot(hAxes(1), tsg.DAYD(ind), tsg.SSPS(ind), ...
               strcat('.',tsg.qc.Color.PROBABLY_GOOD));
ind = find(tsg.SSPS_QC == tsg.qc.Code.PROBABLY_BAD );
plot(hAxes(1), tsg.DAYD(ind), tsg.SSPS(ind), ...
               strcat('.',tsg.qc.Color.PROBABLY_BAD));
ind = find(tsg.SSPS_QC == tsg.qc.Code.BAD );
plot(hAxes(1), tsg.DAYD(ind), tsg.SSPS(ind), ...
               strcat('.',tsg.qc.Color.BAD));
hold off;             

% Plot Temperature and ship velocity with no qc color code
% ---------------------------------------------------------
plot(hAxes(2), tsg.DAYD, tsg.SSJT, '.');
plot(hAxes(3), tsg.DAYD, tsg.SPDC, '.k');

% Formatted x-TIME axes
% ---------------------
datetick(hAxes(1), 'x');
datetick(hAxes(2), 'x');
datetick(hAxes(3), 'x');

% Write some 'Y' label
% ------------------
set(get(hAxes(1), 'Ylabel'), 'String', 'Salinity');
set(get(hAxes(2), 'Ylabel'), 'String', 'Temperature (°C)');
set(get(hAxes(3), 'Ylabel'), 'String', 'Ship Velocity (knots)');

% Make the axes visible
% ---------------------
set(hAxes(1), 'Visible', 'on' );
set(hAxes(2), 'Visible', 'on' );
set(hAxes(3), 'Visible', 'on' );

% The 3 axes will behave identically when zoomed and panned
% ---------------------------------------------------------
linkaxes([hAxes(1),hAxes(2),hAxes(3)], 'x');

end