Commit da417d01 authored by jayd1860's avatar jayd1860
Browse files

v1.40.1

-- Add back display of standard error bars, and x and y-axis labels to MainGUI data display.
-- Fix current element condition name display being cut off in PlotProbeGUI.m
parent cec54469
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -1493,6 +1493,14 @@ classdef ProcStreamClass < handle
                        if ii <= length(obj.output.dcAvg)
                            dataTimeSeries = [dataTimeSeries; obj.output.dcAvg(ii).dataTimeSeries];
                        end
                    case {'od hrf std','od_hrf_std'}
                        if ii <= length(obj.output.dodAvg)
                            dataTimeSeries = [dataTimeSeries; obj.output.dodAvgStd(ii).dataTimeSeries];
                        end
                    case {'hb hrf std','conc hrf std','hb_hrf_std','conc_hrf_std'}
                        if ii <= length(obj.output.dcAvg)
                            dataTimeSeries = [dataTimeSeries; obj.output.dcAvgStd(ii).dataTimeSeries];
                        end
                end
            end
        end
+6 −0
Original line number Diff line number Diff line
@@ -618,9 +618,15 @@ classdef TreeNodeClass < handle
                    case {'od hrf','od_hrf'}
                        d = [d, obj.procStream.GetDataTimeSeries('od hrf',ii)];
                        t = [t; obj.procStream.GetTHRF(ii)];
                    case {'od hrf std','od_hrf_std'}
                        d = [d, obj.procStream.GetDataTimeSeries('od hrf std',ii)];
                        t = [t; obj.procStream.GetTHRF(ii)];
                    case {'hb hrf','conc hrf','hb_hrf','conc_hrf'}
                        d = [d, obj.procStream.GetDataTimeSeries('conc hrf',ii)];
                        t = [t; obj.procStream.GetTHRF(ii)];
                    case {'hb hrf std','conc hrf std','hb_hrf_std','conc_hrf_std'}
                        d = [d, obj.procStream.GetDataTimeSeries('conc hrf std',ii)];
                        t = [t; obj.procStream.GetTHRF(ii)];
                end
            end
        end

MainGUI/DisplayDataConc.m

deleted100644 → 0
+0 −63
Original line number Diff line number Diff line
function DisplayDataConc(hAxes, t, d, dStd, hbType, ch, chLst, nTrials, condition, linecolor, linestyle)

% Parse args
if ~exist('t','var')
    t = [];
end
if ~exist('d','var')
    d = [];
end
if ~exist('dStd','var')
    dStd = [];
end
if ~exist('hbType','var')
    hbType = 1;
end
if ~exist('ch','var')
    ch = 1;
end
if ~exist('chLst','var')
    chLst = 1;
end
if ~exist('nTrials','var')
    nTrials = [];
end
if ~exist('condition','var')
    condition = 1;
end
if ~exist('linecolor','var')
    linecolor = rand(length(chLst),3);
end
if ~exist('linestyle','var')
    linestyle = {'-','--',':'};
end
linewidth = [2,2,2.5];

% Error check args
if isempty(t) || isempty(d) || isempty(hbType) || isempty(ch) || isempty(chLst)
    return;
end
if ~isempty(dStd) && (isempty(nTrials) || isempty(condition))
    return;
end

for iHb=1:length(hbType)
    for ii=length(ch(chLst)):-1:1
        dHbMl = squeeze(d(:, hbType(iHb), ch(chLst(ii))));
        h     = plot(hAxes, t, dHbMl);
        
        % fprintf('Plotting channel: %d, color: [%0.1f, %0.1f, %0.1f]\n', chLst(ii), linecolor(chLst(ii),:));
        set(h, 'color', linecolor(chLst(ii),:));
        set(h, 'linewidth', linewidth(hbType(iHb)));
        set(h, 'linestyle', linestyle{hbType(iHb)});
        
        if ~isempty(dStd)
            dHbMlStd    = squeeze(dStd( :, hbType(iHb), ch(chLst(ii)), condition));
%             dHbMlStdErr = dHbMlStd./sqrt(nTrials(condition));
            idx         = [1:10:length(t)];
            h2          = errorbar(hAxes, t(idx), dHbMl(idx), dHbMlStd(idx),'.');
            set(h2,'color',linecolor(chLst(ii),:));
        end
    end
end

MainGUI/DisplayDataRawOrOD.m

deleted100644 → 0
+0 −61
Original line number Diff line number Diff line
function DisplayDataRawOrOD(hAxes, t, d, dStd, wl, ch, chLst, nTrials, condition, linecolor, linestyle)

% Parse args
if ~exist('t','var')
    t = [];
end
if ~exist('d','var')
    d = [];
end
if ~exist('dStd','var')
    dStd = [];
end
if ~exist('wl','var')
    wl = 1;
end
if ~exist('ch','var')
    ch = 1;
end
if ~exist('chLst','var')
    chLst = 1;
end
if ~exist('nTrials','var')
    nTrials = [];
end
if ~exist('condition','var')
    condition = 1;
end
if ~exist('linecolor','var')
    linecolor = rand(length(chLst),3);
end
if ~exist('linestyle','var')
    linestyle = {'-',':','--'};
end

% Error check args
if isempty(t) || isempty(d) || isempty(wl) || isempty(ch) || isempty(chLst)
    return;
end
if ~isempty(dStd) && (isempty(nTrials) || isempty(condition))
    return;
end
linewidth = [2,2,2,2,2,2];

for iWl=1:length(wl)
    for ii=1:length(ch(chLst))
        dWlMl = squeeze(d( :, ch(chLst(ii)), wl(iWl)));
        h     = plot(hAxes, t, dWlMl);
        
        set(h, 'color',  linecolor(chLst(ii),:));
        set(h, 'linestyle', linestyle{iWl});
        set(h, 'linewidth', linewidth(wl(iWl)));
        
        if ~isempty(dStd)
            dWlMlStd    = squeeze(dStd( :, ch(chLst(ii)), wl(iWl)));
            dWlMlStdErr = dWlMlStd./sqrt(nTrials(condition));
            idx         = 1:10:length(t);
            h2          = errorbar(hAxes, t(idx), dWlMl(idx), dWlMlStdErr(idx),'.');
            set(h2,'color',linecolor(chLst(ii),:));
        end
    end
end
+17 −7
Original line number Diff line number Diff line
function [d, t] = GetDataTimeSeries(handles)
function [d, dStd, t] = GetDataTimeSeries(handles)
global maingui

d       = [];
dStd    = [];
t       = [];

showStdErr = GetShowStdErrEnabled(handles);
datatype   = GetDatatype(handles);

if datatype == maingui.buttonVals.RAW
    d = maingui.dataTree.currElem.GetDataTimeSeries();
    t = maingui.dataTree.currElem.GetTime();
@@ -12,12 +15,19 @@ elseif datatype == maingui.buttonVals.OD
    d = maingui.dataTree.currElem.GetDataTimeSeries('od');
    t = maingui.dataTree.currElem.GetTime();
elseif datatype == maingui.buttonVals.CONC
    d = maingui.dataTree.currElem.GetDataTimeSeries('conc');
    d = maingui.dataTree.currElem.GetDataTimeSeries('conc') * maingui.sclConc;
    t = maingui.dataTree.currElem.GetTime();
elseif datatype == maingui.buttonVals.OD_HRF
    d = maingui.dataTree.currElem.GetDataTimeSeries('od hrf');
    d = maingui.dataTree.currElem.GetDataTimeSeries('od hrf') * maingui.sclConc;
    t = maingui.dataTree.currElem.GetTHRF();
    if showStdErr
        dStd = maingui.dataTree.currElem.GetDataTimeSeries('od hrf std') * maingui.sclConc;
    end
elseif datatype == maingui.buttonVals.CONC_HRF
    d = maingui.dataTree.currElem.GetDataTimeSeries('conc hrf');
    d = maingui.dataTree.currElem.GetDataTimeSeries('conc hrf') * maingui.sclConc;
    t = maingui.dataTree.currElem.GetTHRF();
    if showStdErr
        dStd = maingui.dataTree.currElem.GetDataTimeSeries('conc hrf std') * maingui.sclConc;
    end
end
Loading