123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590 |
- % User find and build composite of Selected Gene Composite and
- % Plot it on OLay Plot and Trend plot DNLaxles
- % For Chonological Studies (multi Day Studies)
- % Called when Composite_ toggle button is clicked.
- % Data stored for printable Trend Plot production (click [L] in DNLaxes )
- global ghandles
- global Exp
- global exDlst
- global exFolder
- tracN=Exp(expN).traceN;
- n=Exp(expN).DexpN; % Temp input for development
- % UmDayaa=cell(3,n); UmDaybb=cell(3,n);
- patrnN=strfind(selGnOrf{1},':'); % Extract Gene-Orf Name
- selStrNm=char(selGnOrf)
- usrGene=selStrNm(1:(patrnN(1)-1))
- prompt={'Enter Specifics Term if used to futher specify selection '}
- dlg_title='User Specifics Term for Refinement Composite';
- num_lines=1;
- def={'None'};
- answer=inputdlg(prompt,dlg_title,num_lines,def);
- % usrGene=cell2mat(answer(1));
- usrSpec=answer(1);
- usrGnSp=strcat(usrGene,usrSpec);
- if strcmpi(usrSpec,'None'), usrGnSp={strcat(usrGene,'-')}; end
-
- % if strfind(Exp(expN).UgeneSpLst,usrGnSp), break; end
- Exp(expN).Dexp(n).UsrmdPLB={[]};
- Exp(expN).Dexp(n).UsrMedianG=[];
- Exp(expN).Dexp(n).UsrminG=[];
- Exp(expN).Dexp(n).UsrmaxG=[];
- Exp(expN).Dexp(n).UsrstdG=[];
- Exp(expN).Dexp(n).UsrmeanG=[];
- Exp(expN).Dexp(n).UsrCmpGL=[]; % For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGK=[]; % For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGr=[]; % For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrGLB={};
-
- for n=1:Exp(expN).DexpLength % Loop Thru Dayexps
- MPnum=length(Exp(expN).Dexp(n).MP);
- DMnum=length(Exp(expN).Dexp(n).DM.drug);
- tPtsSize=size(Exp(expN).Dexp(n).FexpScanBMtp{1,1},(3));
- % lstindx=size(aa,1);
- % lstindxOrf=size(bb,1);
- spN=0;
- rfcnt=0;
- dRF1indx=0;
- % usrGene=cell2mat(usrGene); %user entry of Specifics for Ref selection
- usrSp=cell2mat(usrSpec); %user entry of Specifics for Ref selection
- for mp=1:length(Exp(expN).Dexp(n).MP)
- % RF1fullPlate=0;
- for ind384=1:384
- spN=spN+1;
- try
- r=ceil(ind384/24);
- if rem(ind384,24)==0, c=24; else c=rem(ind384,24); end
- % Insert test for numeric in genename and orf if isnumeric
- % Correct common EXCEL problem of converting OCT1 into a date numeric
- if cell2mat(Exp(expN).Dexp(n).MP(mp).genename{1}(ind384))==38991
- Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)={'OCT1_'};
- elseif isnumeric(cell2mat(Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)))
- Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)={' '};
- end
-
- % DISPersed REFerence capture and find Medians
- if ( ((strcmpi((Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)),usrGene) ...
- && strcmpi((Exp(expN).Dexp(n).MP(mp).specifics{1}(ind384)),usrSp))) ...
- || ((strcmpi((Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)),usrGene) ...
- && strcmpi(usrSp,'None'))) )
- dRF1indx=dRF1indx+1;
- Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)=strrep((Exp(expN).Dexp(n).MP(mp).genename{1}(ind384)),':',' ');
- drf(dRF1indx,1)=(Exp(expN).Dexp(n).MP(mp).genename{1}(ind384));
- drf(dRF1indx,2)={strcat(':',num2str(mp),':',num2str(r),':',num2str(c))};
- drf(dRF1indx,3)={mp}; drfMP(dRF1indx,mp)=mp;
- drf(dRF1indx,4)={r}; drfr(dRF1indx,mp)=r;
- drf(dRF1indx,5)={c}; drfc(dRF1indx,mp)=c;
- drf(dRF1indx,6)={ind384}; drfPindx(dRF1indx,mp)=ind384;
- %drf(dRF1indx,7)=(Exp(expN).Dexp(n).MP(mp).specifics{1}(ind384));
- end
- catch
- error='EZexpSel lineAfter 24 EZmultiGeneLst.m'
- mp %Disable in future to prevent a bomb out OR put into a nested TryCatch
- ind384 %Disable in future to prevent a bomb out OR put into a nested TryCatch
- msgBadGeneName=strcat('check genename at mp=',num2str(mp),' indx=',num2str(ind384))
- end
- end
- mp
- end
- % Exp(expN).Dexp(n).UsrmdPindx=[];
- % Exp(expN).Dexp(n).UsrmdPpltN=[];
- if exist('drf','var')
- % Det. index of change from one MP to the next
- i=2;
- clear chgIndx
- chgIndx(1)=1;
- for j=1:length(drf(:,3))
- if j>1
- if cell2mat(drf(j,3))~=cell2mat(drf((j-1),3)), chgIndx(i)=j; i=i+1; end
- end
- end
- chgIndx(length(chgIndx)+1)=length(drf)+1;
- uu=zeros(size(drf,1),4);
- uu(:,1:4)=cell2mat(drf(:,3:6));
- vv=zeros(length(drf),1 ); % DMnum);
- dMPs=unique(cell2mat(drf(:,3)));
- for mm=1:length(dMPs) % length(chgIndx)
- usrScNdisp=((dMPs(mm)-1)*DMnum)+(dmSel);
- NZrefIndxP=drfPindx((find(drfPindx(:,dMPs(mm)))),dMPs(mm)); medianIndxDisp=NZrefIndxP;
- vv(chgIndx(mm):(chgIndx(mm+1)-1),dmSel)=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,5);
- % For Global Ref Composite 17_1009
- vvK(chgIndx(mm):(chgIndx(mm+1)-1),dmSel)=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3);
- vvr(chgIndx(mm):(chgIndx(mm+1)-1),dmSel)=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4);
- end % for mm=1:length(dMPs)
- % Calc. Global Mean, Std, And Median For Distributed References
- uu=horzcat(uu,vv);
- for d=dmSel:dmSel
- medianIndxG=[];
- NZusrIndxG=[];
- minG=min(nonzeros(vv(:,d)));
- maxG=max(nonzeros(vv(:,d)));
- usrmeanG=mean(nonzeros(vv(:,d)));
- usrStdG=std(nonzeros(vv(:,d)));
- NZusrIndxG=find(vv(:,d));
- if isempty(usrmeanG)
- nonZeroCntD=0 % medianIndxDisp=RFmeanG(d);
- else
- nonZeroCntD=length(nonzeros(vv(:,d)));
- end
- % Calc. of median value for composite doesn't require and odd number of Indx items
- medianIndxG=NZusrIndxG(:);
- if ~isempty(NZusrIndxG) && length(medianIndxG) > 0 %(.15*size(drf,1)) %To calc. a median, more than 15% of spots must be nonZero
- Exp(expN).Dexp(n).UsrGLB(d)=usrGnSp; % strcat(aa(lstindx,1),aa(lstindx,2));
- Exp(expN).Dexp(n).UsrLvals=vv(medianIndxG);
- Exp(expN).Dexp(n).UsrKvals=vvK(medianIndxG);
- Exp(expN).Dexp(n).Usrrvals=vvr(medianIndxG);
- end
- end
- end
- end
- Exp(expN).UgeneCnt=Exp(expN).UgeneCnt +1;
- Exp(expN).UgeneSpLst(Exp(expN).UgeneCnt)=usrGnSp;
- % PLOT Values Selected Gene-Specifics Composite
- smpSz=size(medianIndxG,1);
- K=median(vvK(medianIndxG,dmSel)); Ks=num2str(K); Kstd=std(vvK(medianIndxG,dmSel)); KstdStr=num2str(Kstd);
- r=median(vvr(medianIndxG,dmSel)); rs=num2str(r); rstd=std(vvr(medianIndxG,dmSel)); rstdStr=num2str(rstd);
- l=median(vv(medianIndxG,dmSel)); Ls=num2str(l); Lstd=std(vv(medianIndxG,dmSel)); LstdStr=num2str(Lstd);
- Kl=K - std(vvK(medianIndxG,dmSel)); %K - Exp(expN).Dexp(DexpN).RFcmpK(RFnum).dm(inDM).std;
- Ku=K + std(vvK(medianIndxG,dmSel)); %K + Exp(expN).Dexp(DexpN).RFcmpK(RFnum).dm(inDM).std;
- rl=r - std(vvr(medianIndxG,dmSel)); %r - Exp(expN).Dexp(DexpN).RFcmpr(RFnum).dm(inDM).std;
- ru=r + std(vvr(medianIndxG,dmSel)); %r + Exp(expN).Dexp(DexpN).RFcmpr(RFnum).dm(inDM).std;
- lfast=l - std(vv(medianIndxG,dmSel)); %l - Exp(expN).Dexp(DexpN).RFcmpL(RFnum).dm(inDM).std;
- lslow=l + std(vv(medianIndxG,dmSel)); %l + Exp(expN).Dexp(DexpN).RFcmpL(RFnum).dm(inDM).std;
- try Kstr=Ks(1:5); catch, Kstr=Ks(1:length(Ks)); end
- try rstr=rs(1:5); catch, rstr=rs(1:length(rs)); end
- try Lstr=Ls(1:5); catch, Lstr=Ls(1:length(Ls)); end
-
- pertSel=Exp(zoneSel).Dexp(DexpN).pertSel; %floor(get(handles.DMsldr1,'value'));
- plateNum=(LBmp-1)*destPerMP + pertSel;
- indx=((LBr-1)*24) +LBc
- MP=Exp(zoneSel).Dexp(DexpN).MP;
-
- try
- t=1:200;
- clear g;
- try
- g=K ./ (1 + exp(-r.* (t - l )));
- gSlow=Kl ./ (1 + exp(-rl.* (t - lslow )));
- gFast=Ku ./ (1 + exp(-ru.* (t - lfast )));
- if K==0||r==0||l==0, g(1:200)=1;gSlow(1:200)=1;gFast(1:200)=1;end
- if zoneSel==1, plotAxes=ghandles.Paxes1; OLaxes=ghandles.OLaxes1;
- Dlaxes=ghandles.Dlaxes1;Dkaxes=ghandles.Dkaxes1;Draxes=ghandles.Draxes1;
- Exp(1).traceN=Exp(1).traceN+1;
- traceN=Exp(1).traceN;
- end
- if zoneSel==2, plotAxes=ghandles.Paxes2; OLaxes=ghandles.OLaxes2;Daxes=ghandles.Daxes2;
- Dlaxes=ghandles.Dlaxes2;Dkaxes=ghandles.Dkaxes2;Draxes=ghandles.Draxes2;
- Exp(2).traceN=Exp(2).traceN+1;
- traceN=Exp(2).traceN;
- end
- if zoneSel==3, plotAxes=ghandles.Paxes3; OLaxes=ghandles.OLaxes3;Daxes=ghandles.Daxes3;
- Dlaxes=ghandles.Dlaxes3;Dkaxes=ghandles.Dkaxes3;Draxes=ghandles.Draxes3;
- Exp(3).traceN=Exp(3).traceN+1;
- traceN=Exp(3).traceN;
- end
- plot(plotAxes,t,g);hold (plotAxes,'on');
- plot(plotAxes,t,gSlow,'y');plot(plotAxes,t,gFast,'r');hold (plotAxes,'off');
- % Store L R and K valves for Composite [C] plots
- Exp(expN).ll(traceN)=l; Exp(expN).rr(traceN)=r; Exp(expN).kk(traceN)=K;
- Exp(expN).lslow(traceN)=lslow; Exp(expN).lfast(traceN)=lfast;
- try
- for i=1:length(Exp(zoneSel).hOL(:))
- set(Exp(zoneSel).hOL(i),'color',[0 0 1]);
- end
- catch
- end
- Exp(zoneSel).hOL(traceN)=plot(OLaxes,t,g);hold on;
- set(Exp(zoneSel).hOL(traceN),'color',[1 0 0])
- catch
- catchissue='Ln100 EZlstBoxExt'
- end
- % Get the DM agar description
- if expN==1,DMstr=char(get(handles.DM1,'string'));end
- if expN==2,DMstr=char(get(handles.DM2,'string'));end
- if expN==3,DMstr=char(get(handles.DM3,'string'));end
- gene=usrGnSp; orf='' % MP(1,LBmp).orf{1,1}(indx);
- geneOrfstr=strcat(gene,'_',orf,'_');
- grfgenestr=strcat(gene,'_',orf,'_');
- % spec=MP(1,LBmp).specifics{1,1}(indx); %orfrep=MP(1,plateNum).orfRep{1,1}(indx);
- % tPtStr=strcat('T=', num2str(scan(1,plateNum).plate(1).t0Series(tPtSel)));
- % graphStr=strcat(grfgenestr,'_','L=',Lstr,'_','r=',rstr,'_','K=',Kstr);
- graphStr=strcat(usrGnSp,'_','L=',Lstr,'_','Ls=',LstdStr,'_','r=',rstr,'_','rs=',rstdStr,'_','K=',Kstr,'Ks=',KstdStr);
- spotDescrip=strcat(graphStr,'->',DMstr);
- xp=char(Exp(zoneSel).Dexp(DexpN).resDir);
- if ispc,
- slashPos=strfind(char(Exp(zoneSel).Dexp(DexpN).resDir),'\');
- else
- slashPos=strfind(char(Exp(zoneSel).Dexp(DexpN).resDir),'/');
- end
-
- startPos=slashPos(length(slashPos)-1) +1;
- endPos=slashPos(length(slashPos)) -1
- expStr={xp(startPos:endPos)}
- Exp(zoneSel).hOLname(traceN)=spotDescrip; %graphStr; %ghandles.Exp(zoneSel).hOLname(traceN)=graphStr;
- Exp(zoneSel).hOLexpNm(traceN)=expStr; %ghandles.Exp(expN).hOLexpNm(traceN)=expStr;
- Exp(zoneSel).hOLresDir(traceN)={Exp(zoneSel).Dexp(DexpN).resDir};
- Exp(zoneSel).hOLplateNum(traceN)=plateNum;
- % traceData=vertcat(get(Exp(OLay).hOL(traceN),'XData'),get(ghandles.Exp(OLay).hOL(traceN),'YData'));
- if zoneSel==1,set(ghandles.GeneOrfLoc1,'string',geneOrfstr);end % Displays the value.
- if zoneSel==2,set(ghandles.GeneOrfLoc2,'string',geneOrfstr);end
- if zoneSel==3,set(ghandles.GeneOrfLoc3,'string',geneOrfstr);end
- if zoneSel==1,set(ghandles.graphStrLoc1,'string',spotDescrip);end %graphStr);end % Displays the value.
- if zoneSel==2,set(ghandles.graphStrLoc2,'string',spotDescrip);end %graphStr);end
- if zoneSel==3,set(ghandles.graphStrLoc3,'string',spotDescrip);end %graphStr);end
- catch ME
- msg='ME.message';
- end % trycatch zoneSel<4 datatip selection from Image (not from an OverLay Plot)
- % Deprecated functions
- %{
- % If a specific spot median is ever needed
- %Calc. of EXACT median specific culture requires an odd number of indx items
- if ~isempty(NZusrIndxG) && mod(nonZeroCntD,2)==0, medianIndxOdd= NZusrIndxG(1:(size(NZusrIndxG,1)-1)); end
- if ~isempty(NZusrIndxG) && mod(nonZeroCntD,2)~=0, medianIndxOdd=NZusrIndxG(:); end
- mvalsDG=median(vv(medianIndxOdd,d)); %(nonzeros(vv(:,d)));
- nzPosIndxDG=find(mvalsDG==vv(:,d));
- Exp(expN).Dexp(n).UsrMedianG(d)=mvalsDG;
- Exp(expN).Dexp(n).UsrminG(d)=minG;
- Exp(expN).Dexp(n).UsrmaxG(d)=maxG;
- Exp(expN).Dexp(n).UsrstdG(d)=usrStdG;
- Exp(expN).Dexp(n).UsrmeanG(d)=usrmeanG;
- %}
- %{
- Exp(expN).Dexp(n).UsrCmpGL.dm(d).med=median(vv(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGL.dm(d).mean=mean(vv(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGL.dm(d).std=std(vv(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGL.dm(d).min=min(vv(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGL.dm(d).max=max(vv(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGK.dm(d).med=median(vvK(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGK.dm(d).mean=mean(vvK(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGK.dm(d).std=std(vvK(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGK.dm(d).min=min(vvK(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGK.dm(d).max=max(vvK(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGr.dm(d).med=median(vvr(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGr.dm(d).mean=mean(vvr(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGr.dm(d).std=std(vvr(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGr.dm(d).min=min(vvr(medianIndxP,d)); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpGr.dm(d).max=max(vvr(medianIndxP,d)); %For Ref Composite 17_1026
- %}
- %{
- for mm=1:length(dMPs) % length(chgIndx)
-
- for d=selDM:selDM %1:(DMnum)
- medianIndxDisp=[];
- NZrefIndxP=[];
- nonZeroValsP=[];
- medValLstDisp=[];
- usrScNdisp=((dMPs(mm)-1)*DMnum)+(d);
- try % Determine the dispersed User Gene median mean and std if such exist
- NZrefIndxP=drfPindx((find(drfPindx(:,dMPs(mm)))),dMPs(mm)); medianIndxDisp=NZrefIndxP
- vv(chgIndx(mm):(chgIndx(mm+1)-1),d)=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,5);
- %For Global Ref Composite 17_1009 %**************************************************************************
- vvK(chgIndx(mm):(chgIndx(mm+1)-1),d)=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3);
- vvr(chgIndx(mm):(chgIndx(mm+1)-1),d)=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4);
- %*****************************************************************************************************
- %{
- nonZeroValsP=nonzeros(Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,5));
- std1Disp=std(nonZeroValsP);
- mean1Disp=mean(nonZeroValsP);
- minDisp=min(nonZeroValsP);
- maxDisp=max(nonZeroValsP);
- drfVals=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,5);
-
- %nzValsAcc(mm).DM(d,:)=nonZeroValsP;
-
- %MEDIAN Determination for PLATES with Dispersed RFs
- %NZrefIndxP=NZrefIndxP %find(Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,5));
- if isempty(NZrefIndxP), nonZeroCntDisp=0, medianIndxDisp=NZrefIndxP;
- else nonZeroCntDisp=length(NZrefIndxP);
- end
- if ~isempty(NZrefIndxP) && mod(nonZeroCntDisp,2)==0, medianIndxDisp= NZrefIndxP(1:nonZeroCntDisp-1); end
- if ~isempty(NZrefIndxP) && mod(nonZeroCntDisp,2)~=0, medianIndxDisp=NZrefIndxP; end
- %}
- if ~isempty(NZrefIndxP) && length(medianIndxDisp) > 0 %(.15*384) %To calc. a median, more than 15% of spots must be nonZero
- medValLstDisp=Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(medianIndxDisp,5);
- mval1Disp=median(medValLstDisp);
- nzMedPosIndx=find(mval1Disp==nonZeroValsP);
- medianIndxP=NZrefIndxP(nzMedPosIndx);
- %UsrmdlocP(1)=ceil(medianIndxP/24); %calc r value
- %UsrmdlocP(2)=medianIndxP - ((UsrmdlocP(1)-1)*24); %calc c value
- meanKval=mean(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3))));
- meanrval=mean(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4))));
- else
- % Need to set L r K values to zeros or pick the first spot with zeros
- %Spot 1 could be other than zero as the median isn't calculated if fewer than some percent are nonzero
- medianCalcFailedD='To Few nonZero spots for valid median RF1 selection'
- firstZeroDindx=find(((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,5))==0),1,'first');
- firstZeroD=drfPindx((firstZeroDindx),dMPs(mm));
- %Exp(expN).Dexp(n).UsrmdPindx(d,dMPs(mm))=firstZeroD;
- %Exp(expN).Dexp(n).UsrmdPpltN(d,dMPs(mm))=dMPs(mm); %RF1mp; %Is this supposed to be the MP number or the ScanPlate number???
-
-
- end %~isempty(NZrefIndxP) && length(medianIndxPisp) > 3 ln584
- catch %try ln565
- medianCalcTryFailed1D='Failed! Failed! {Dispersed RF1s}'
- try
- firstZeroindxD=find(vv((chgIndx(d):chgIndx(d+1)-1),5)==0,1,'first');
- firstZeroPindx=uu(firstZeroindxD,4);
- catch
- end
- end %try ~ln565
- end %for d=0:DMnum
- end %for mm=1:length(dMPs)
- %}
- %{
- %Code Template taken from EZlstBoxCmpExt.m
- try
- %if RFcmpGFlg==0
- smpSz=size(medianIndxP,1);
- K=median(vvK(medianIndxP,dmSel)); Ks=num2str(K); Kstd=std(vvK(medianIndxP,dmSel)); KstdStr=num2str(Kstd);
- r=median(vvr(medianIndxP,dmSel)); rs=num2str(r); rstd=std(vvr(medianIndxP,dmSel)); rstdStr=num2str(rstd);
- l=median(vv(medianIndxP,dmSel)); Ls=num2str(l); Lstd=std(vv(medianIndxP,dmSel)); LstdStr=num2str(Lstd);
- Kl=K - std(vvK(medianIndxP,dmSel)); %K - Exp(expN).Dexp(DexpN).RFcmpK(RFnum).dm(inDM).std;
- Ku=K + std(vvK(medianIndxP,dmSel)); %K + Exp(expN).Dexp(DexpN).RFcmpK(RFnum).dm(inDM).std;
- rl=r - std(vvr(medianIndxP,dmSel)); %r - Exp(expN).Dexp(DexpN).RFcmpr(RFnum).dm(inDM).std;
- ru=r + std(vvr(medianIndxP,dmSel)); %r + Exp(expN).Dexp(DexpN).RFcmpr(RFnum).dm(inDM).std;
- lfast=l - std(vv(medianIndxP,dmSel)); %l - Exp(expN).Dexp(DexpN).RFcmpL(RFnum).dm(inDM).std;
- lslow=l + std(vv(medianIndxP,dmSel)); %l + Exp(expN).Dexp(DexpN).RFcmpL(RFnum).dm(inDM).std;
- try Kstr=Ks(1:5); catch, Kstr=Ks(1:length(Ks)); end
- try rstr=rs(1:5); catch, rstr=rs(1:length(rs)); end
- try Lstr=Ls(1:5); catch, Lstr=Ls(1:length(Ls)); end
- t=1:200;
- clear g;
- try
- g=K ./ (1 + exp(-r.* (t - l )));
- gSlow=Kl ./ (1 + exp(-rl.* (t - lslow )));
- gFast=Ku ./ (1 + exp(-ru.* (t - lfast )));
- if K==0||r==0||l==0, g(1:200)=1;gSlow(1:200)=1;gFast(1:200)=1;end
- %tser=(scan(1,plateNum).plate(1).t0Series(:));
- %rawData=scan(1,plateNum).plate(1).intens(indx,:)/scan(1,plateNum).plate(1).Ag(indx);
- if zoneSel==1, plotAxes=ghandles.Paxes1; OLaxes=ghandles.OLaxes1;
- Dlaxes=ghandles.Dlaxes1;Dkaxes=ghandles.Dkaxes1;Draxes=ghandles.Draxes1;
- Exp(1).traceN=Exp(1).traceN+1;
- traceN=Exp(1).traceN;
- end
- if zoneSel==2, plotAxes=ghandles.Paxes2; OLaxes=ghandles.OLaxes2;Daxes=ghandles.Daxes2;
- Dlaxes=ghandles.Dlaxes2;Dkaxes=ghandles.Dkaxes2;Draxes=ghandles.Draxes2;
- Exp(2).traceN=Exp(2).traceN+1;
- traceN=Exp(2).traceN;
- end
- if zoneSel==3, plotAxes=ghandles.Paxes3; OLaxes=ghandles.OLaxes3;Daxes=ghandles.Daxes3;
- Dlaxes=ghandles.Dlaxes3;Dkaxes=ghandles.Dkaxes3;Draxes=ghandles.Draxes3;
- Exp(3).traceN=Exp(3).traceN+1;
- traceN=Exp(3).traceN;
- end
- plot(plotAxes,t,g);hold (plotAxes,'on'); %plot(plotAxes,tser,rawData,'g*');
- plot(plotAxes,t,gSlow,'y'); plot(plotAxes,t,gFast,'r');hold (plotAxes,'off');
- %************CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC**************************************
- %Store L R and K valves for Composite [C] plots
- Exp(expN).ll(traceN)=l; Exp(expN).rr(traceN)=r; Exp(expN).kk(traceN)=K;
- Exp(expN).lstd(traceN)=std(vv(medianIndxP,dmSel)); %Exp(expN).Dexp(DexpN).RFcmpL(RFnum).dm(inDM).std;
- Exp(expN).kstd(traceN)=std(vvK(medianIndxP,dmSel)); %Exp(expN).Dexp(DexpN).RFcmpK(RFnum).dm(inDM).std;
- Exp(expN).rstd(traceN)=std(vvr(medianIndxP,dmSel)); %Exp(expN).Dexp(DexpN).RFcmpr(RFnum).dm(inDM).std;
- Exp(expN).lslow(traceN)=lslow; Exp(expN).lfast(traceN)=lfast;
- Exp(expN).lKl(traceN)=Kl; Exp(expN).Ku(traceN)=Ku;
- Exp(expN).lrl(traceN)=rl; Exp(expN).Ku(traceN)=ru;
- %************************************************************************
- try for i=1:length(Exp(zoneSel).hOL(:)),set(Exp(zoneSel).hOL(i),'color',[0 0 1]); end, catch; end
- Exp(zoneSel).hOL(traceN)=plot(OLaxes,t,g);hold on;
- set(Exp(zoneSel).hOL(traceN),'color',[1 0 0])
- %Exp(zoneSel).hOLb(traceN)=plot(OLaxes,tser,rawData,'g*'); %No Raw Data, Ref Composite 17_1009
- catch
- catchissue='Ln68 EZlstBoxCmpExt'
- end %trycatch
- %Get the DM agar description
- %if expN==1,DMstr=char(get(handles.DM1,'string'));end
- %if expN==2,DMstr=char(get(handles.DM2,'string'));end
- %if expN==3,DMstr=char(get(handles.DM3,'string'));end
- DMstr=num2str(dmSel);
- %spec=MP(1,LBmp).specifics{1,1}(indx); %orfrep=MP(1,plateNum).orfRep{1,1}(indx);
- %tPtStr=strcat('T=', num2str(scan(1,plateNum).plate(1).t0Series(tPtSel)));
- %graphStr=strcat(usrGnSp,'_','L=',Lstr,'_','Lstd=',LstdStr,'_','r=',rstr,'_','rstd=',rstdStr,'_','K=',Kstr,'Kstd=',KstdStr);
- graphStr=strcat(usrGnSp,'_','L=',Lstr,'_','Lstd=',LstdStr,'_','r=',rstr,'_','rstd=',rstdStr,'_','K=',Kstr,'Kstd=',KstdStr);
- spotDescrip=strcat(graphStr,'DMS->',DMstr);
- xp=char(Exp(zoneSel).Dexp(DexpN).resDir);
- if ispc,
- slashPos=strfind(char(Exp(zoneSel).Dexp(DexpN).resDir),'\');
- else
- slashPos=strfind(char(Exp(zoneSel).Dexp(DexpN).resDir),'/');
- end
-
- startPos=slashPos(length(slashPos)-1) +1;
- endPos=slashPos(length(slashPos)) -1
- expStr={xp(startPos:endPos)}
- Exp(zoneSel).hOLname(traceN)=usrGnSp; %spotDescrip; %graphStr; %ghandles.Exp(zoneSel).hOLname(traceN)=graphStr;
- Exp(zoneSel).hOLexpNm(traceN)=expStr; %ghandles.Exp(expN).hOLexpNm(traceN)=expStr;
- Exp(zoneSel).hOLresDir(traceN)={Exp(zoneSel).Dexp(DexpN).resDir};
- %Exp(zoneSel).hOLplateNum(traceN)=plateNum;
- %traceData=vertcat(get(Exp(OLay).hOL(traceN),'XData'),get(ghandles.Exp(OLay).hOL(traceN),'YData'));
- %if zoneSel==1,set(ghandles.GeneOrfLoc1,'string',geneOrfstr);end % Displays the value.
- %if zoneSel==2,set(ghandles.GeneOrfLoc2,'string',geneOrfstr);end
- %if zoneSel==3,set(ghandles.GeneOrfLoc3,'string',geneOrfstr);end
- %if zoneSel==1,set(ghandles.graphStrLoc1,'string',spotDescrip);end %graphStr);end % Displays the value.
- %if zoneSel==2,set(ghandles.graphStrLoc2,'string',spotDescrip);end %graphStr);end
- %if zoneSel==3,set(ghandles.graphStrLoc3,'string',spotDescrip);end %graphStr);end
- catch
- catchissue='Ln33 EZlstBoxCmpExt'
- msg='Error'
- end % trycatch zoneSel<4 datatip selection from Image (not from an OverLay Plot)
- %**************Write Spot and Exp Info to OLay title areas****************************************************************************
- if zoneSel==1, %&& get(ghandles.rotPB1,'value')~=1
- if length(char(Exp(zoneSel).hOLname(traceN)))>40,set(ghandles.OLay1,'FontSize',8);end
- set(ghandles.OLay1,'string', Exp(zoneSel).hOLname(traceN));
- if length(char(Exp(zoneSel).hOLexpNm(traceN)))>40,set(ghandles.OLexp1,'FontSize',8);end
- set(ghandles.OLexp1,'string',Exp(zoneSel).hOLexpNm(traceN));
- end
- if zoneSel==2 %&& get(ghandles.rotPB2,'value') ~=1
- if length(char(Exp(zoneSel).hOLname(traceN)))>40,set(ghandles.OLay2,'FontSize',8);end
- set(ghandles.OLay2,'string', Exp(zoneSel).hOLname(traceN));
- if length(char(Exp(zoneSel).hOLexpNm(traceN)))>40,set(ghandles.OLexp2,'FontSize',8);end
- set(ghandles.OLexp2,'string',Exp(zoneSel).hOLexpNm(traceN));
- end
- if zoneSel==3 %&& get(ghandles.rotPB3,'value') ~=1
- if length(char(Exp(zoneSel).hOLname(traceN)))>40,set(ghandles.OLay3,'FontSize',8);end
- set(ghandles.OLay3,'string', Exp(OLay).hOLname(traceN));
- if length(char(Exp(zoneSel).hOLexpNm(traceN)))>40,set(ghandles.OLexp3,'FontSize',8);end
- set(ghandles.OLexp3,'string',Exp(OLay).hOLexpNm(traceN));
- end
- %}
- %**********************************************************************
- %{
- %elseif RFcmpGFlg==1
- K=Exp(expN).Dexp(DexpN).RFcmpGK.dm(inDM).med; Ks=num2str(K);
- r=Exp(expN).Dexp(DexpN).RFcmpGr.dm(inDM).med; rs=num2str(r);
- l=Exp(expN).Dexp(DexpN).RFcmpGL.dm(inDM).med; Ls=num2str(l);
- Kl=K - Exp(expN).Dexp(DexpN).RFcmpGK.dm(inDM).std;
- Ku=K + Exp(expN).Dexp(DexpN).RFcmpGK.dm(inDM).std;
- rl=r - Exp(expN).Dexp(DexpN).RFcmpGr.dm(inDM).std;
- ru=r + Exp(expN).Dexp(DexpN).RFcmpGr.dm(inDM).std;
- lfast=l - Exp(expN).Dexp(DexpN).RFcmpGL.dm(inDM).std;
- lslow=l + Exp(expN).Dexp(DexpN).RFcmpGL.dm(inDM).std;
- end
- %}
- %Exp(expN).Dexp(n).UsrmdPindx=[];
- %Exp(expN).Dexp(n).UsrmdPpltN=[];
- %Exp(expN).Dexp(n).UsrmdPscanN=[];
- %Exp(expN).Dexp(n).UsrMedianP=[];
- %Exp(expN).Dexp(n).stdP=[];
- %Exp(expN).Dexp(n).meanP=[];
- %Exp(expN).Dexp(n).minP=[];
- %Exp(expN).Dexp(n).maxP=[];
- %Exp(expN).Dexp(n).RFmdGLB={[]};
- %Exp(expN).Dexp(n).RFmdGindx=[];
- %Exp(expN).Dexp(n).RFmdGpltN=[];
- %Exp(expN).Dexp(n).RFmdGscanN=[];
- %UsrmdDGloc(d,1)=uu(nzPosIndxDG,1); %MP of distributedGlobal Median value
- %UsrmdDGloc(d,2)=uu(nzPosIndxDG,2); %calc r value
- %UsrmdDGloc(d,3)=uu(nzPosIndxDG,3); %calc c value
- %lstindx=lstindx+1;
- %lstindxOrf=lstindxOrf+1;
- %{
- usrGLbl=strcat(usrGnSp,'UmdG('); %accomodate User Ref Selection
- aa(lstindx,1)=strcat(usrGLbl,num2str(d),')'); %remove string2cell brackets {...}
- aa(lstindx,2)={strcat(':',num2str(UsrmdDGloc(d,1)),':',num2str(UsrmdDGloc(d,2)),':',num2str(UsrmdDGloc(d,3)))}; %,'std_',num2str(std2))};
- bb(lstindxOrf,1)=strcat(usrGLbl,num2str(d),')'); %remove string2cell brackets {...}
- bb(lstindxOrf,2)={strcat(':',num2str(UsrmdDGloc(d,1)),':',num2str(UsrmdDGloc(d,2)),':',num2str(UsrmdDGloc(d,3)))}; %,'std_',num2str(std2))};
- %Composite Reference Amalgum Plot ******************
- lstindx=lstindx+1;
- lstindxOrf=lstindxOrf+1;
- aa(lstindx,1)=strcat(usrGnSp,'UcmpG(',num2str(d),')');
- aa(lstindx,2)={''};
- bb(lstindxOrf,1)=strcat(usrGnSp,'UcmpG(',num2str(d),')');
- bb(lstindxOrf,2)={''};
- %*****************************************************
- %}
- %{
- lstindx=lstindx+1;
- lstindxOrf=lstindxOrf+1;
- usrPLbl=strcat(usrGnSp,'UmdP('); %accomodate User Ref Selection
- aa(lstindx,1)=strcat(usrPLbl,num2str(d),')');
- aa(lstindx,2)={strcat(':',num2str(dMPs(mm)),':',num2str(UsrmdlocP(1)),':',num2str(UsrmdlocP(2)))};
- bb(lstindxOrf,1)=strcat(usrPLbl,num2str(d),')'); %remove string2cell brackets {...}
- bb(lstindxOrf,2)={strcat(':',num2str(dMPs(mm)),':',num2str(UsrmdlocP(1)),':',num2str(UsrmdlocP(2)))};
- Exp(expN).Dexp(n).UsrmdPLB(d,dMPs(mm))=strcat(aa(lstindx,1),aa(lstindx,2));
- Exp(expN).Dexp(n).UsrmdPindx(d,dMPs(mm))=medianIndxP;
- Exp(expN).Dexp(n).UsrmdPpltN(d,dMPs(mm))=dMPs(mm); %This is a storage of the MasterPlate used NOT the ScanPlate? WeMight wish to store the ScanPlateNumber also???
- Exp(expN).Dexp(n).UsrmdPscanN(d,dMPs(mm))=usrScNdisp;
- Exp(expN).Dexp(n).UsrMedianP(d,dMPs(mm))=mval1Disp;
- Exp(expN).Dexp(n).stdP(d,dMPs(mm))=std1Disp;
- Exp(expN).Dexp(n).meanP(d,dMPs(mm))=mean1Disp;
- Exp(expN).Dexp(n).minP(d,dMPs(mm))=minDisp;
- Exp(expN).Dexp(n).maxP(d,dMPs(mm))=maxDisp;
- Exp(expN).Dexp(n).UsrCmpPL.dm(d).med=mval1Disp; %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPL.dm(d).mean=mean1Disp; %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPL.dm(d).std=std1Disp; %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPL.dm(d).min=minDisp; %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPL.dm(d).max=maxDisp; %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPK.dm(d).med=median(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPK.dm(d).mean=mean(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPK.dm(d).std=std(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPK.dm(d).min=min(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPK.dm(d).max=max(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,3)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPr.dm(d).med=median(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPr.dm(d).mean=mean(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPr.dm(d).std=std(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPr.dm(d).min=min(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4)))); %For Ref Composite 17_1026
- Exp(expN).Dexp(n).UsrCmpPr.dm(d).max=max(nonzeros((Exp(expN).Dexp(n).scan(usrScNdisp).plate(1).CFout(NZrefIndxP,4)))); %For Ref Composite 17_1026
- %}
- %Exp(expN).Dexp(n).UsrmdGindx(d)=nzPosIndxDG;
- %Exp(expN).Dexp(n).UsrmdGpltN(d)=UsrmdDGloc(d,1);
- %Exp(expN).Dexp(n).UsrmdGscanN(d)=uu(nzPosIndxDG,4);
- %{
- try
- firstZeroindxD=find(vv((chgIndx(d):chgIndx(d+1)-1),5)==0,1,'first');
- firstZeroPindx=uu(firstZeroindxD,4);
- %Exp(expN).Dexp(n).UsrmdPpltN(d,dMPs(mm))=dMPs(mm);
- %Exp(expN).Dexp(n).UsrmdPindx(d,dMPs(mm))=firstZeroPindx;
-
- catch
- catchissue='try at Ln565'
- %Exp(expN).Dexp(n).UsrmdPpltN(d,dMPs(mm))=dMPs(mm);
- %Exp(expN).Dexp(n).UsrmdPindx(d,dMPs(mm))=384; %if crapout,Then use spot384 as default to keep going
- end
- try
- % Exp(expN).Dexp(n).UsrmdPpltN=dMPs(mm);
- catch
- catchissue='Ln619'
- %Exp(expN).Dexp(n).UsrmdPpltN=1; %This might keep from breaking BUT ???
- end
- error='EZexpSel lineAfter 565'
- end %try ~ln565
- %}
|