I have attached my code below.
When I run this code, the title to my plots look like this (see attached picture). Why is this? In the code, the array "M_G_gsm" is just an array of strings. This was not previously used to make the title, then I just wrote the title by hand. I believe this problem has to do with the string array, but I cant figure out how. Can anyone suggest a solution? I just want the title to become a row, like normal.
Thank you in advance
Henry
clearclcmaterial = 1geometry = 1if material==1 & geometry == 1M_G_gsm=["M1","G1"];gsm=["290gsm"];positions=['5']numberofpositions = 5;numberofpackages=10; elseif material==1 & geometry == 2M_G_gsm=["M1","G2"];gsm=["290gsm"];positions=['9']numberofpositions = 9;numberofpackages=10; elseif material==2 & geometry == 1M_G_gsm=["M2","G1"];gsm=["315gsm"];positions=['5']numberofpositions = 5;numberofpackages=11;elseif material==3 & geometry == 1M_G_gsm=["M3","G1"];gsm=["340gsm"];positions=['5']numberofpositions = 5;numberofpackages=13;endpositionletter=['A';'B'];for packagenumber = [1:numberofpackages] %FIRST 4 FOR LOOPS ARE JUST FOR DATA COLLECTION!
for positionnumber = [1:numberofpositions] for pos=[1:2]filename=strcat(M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),'_',num2str(positionnumber),positionletter(pos),'_lf.csv');if exist(filename,'file') == 0, continue, endA = importdata(filename); %Importing the CSV file
package{packagenumber}{positionnumber}{pos} = A.data; %Naming the numerical array
time{packagenumber}{positionnumber}{pos}=package{packagenumber}{positionnumber}{pos}(:,1); %Biotac time vector is separated from package{i}
E_package{packagenumber}{positionnumber}{pos}=package{packagenumber}{positionnumber}{pos}(:,2:20); %Separating the sensors E1 through E19 from package{i}
PDC{packagenumber}{positionnumber}{pos}=package{packagenumber}{positionnumber}{pos}(:,21); %PDC array from CSV-file
globalforce{packagenumber}{positionnumber}{pos}=package{packagenumber}{positionnumber}{pos}(:,24); %Force array from CSV-file
x0=0;y0=0;width=800; %Setting height of figures
height=width * (8/11); % height to width ratio is 8:11 .
for i=1:19 %For each sensor indes, 1 through 19
E_norm{packagenumber}{positionnumber}{pos}(:,i)=((4095./E_package{packagenumber}{positionnumber}{pos}(:,i))-1)*10;%Creates an array of bit values from the sensors. Every cell in every column in E_temp is divided by the largest element in E_temp
end end end end% clear positionnumber pos packagenumber i
%FOLLOWING FOR-LOOPS ARE FOR PLOTTING ONLY
%M1_G1_290, contains 10 packages, 5 positions from A to B
times=(0:0.010:80);for i=[2,3,5,7,8,9,10,12,13,15]; for pos=[1:2]; filename=strcat(M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),'_',num2str(positionnumber),positionletter(pos),'_lf.csv'); figuresdir = strcat('D:\thesis_figures\Sensors_at_all_positions_and_packages\',M_G_gsm(1),'_',M_G_gsm(2),'_',gsm,'_','E',num2str(i),' positions ',positionletter(pos),'\'); mkdir(figuresdir); %The figure folder for each package is created
c=0; for positionnumber=[1:numberofpositions] lengths=5000*ones(1,numberofpositions); impedances_all_max=0.00001*ones(1,numberofpositions); impedances_all_min=5000*ones(1,numberofpositions); for packagenumber=[1:numberofpackages]c=c+1;filename=strcat(M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),'_',num2str(positionnumber),positionletter(pos),'_lf.csv'); if ~exist(filename,'file') continue end lengths(1,packagenumber)=length(E_norm{packagenumber}{positionnumber}{pos}(:,i)); PDC_temp_truncated{packagenumber}{positionnumber}{pos}=PDC{packagenumber}{positionnumber}{pos}(1:min(lengths(1,packagenumber)),1); [maxValuePDC,maxIndexPCD] = max(PDC_temp_truncated{packagenumber}{positionnumber}{pos}); E_norm_temp=E_norm{packagenumber}{positionnumber}{pos}(:,i); E_norm_temp_truncated=E_norm_temp(1:min(lengths(1,packagenumber)),1); fromStartToMax_Esensor{packagenumber}{positionnumber}{pos}=E_norm_temp_truncated(1:maxIndexPCD,1); findFirstMin{packagenumber}{positionnumber}{pos}(:,i)=min(fromStartToMax_Esensor{packagenumber}{positionnumber}{pos}); dropBeforeMax_Esensor{packagenumber}{positionnumber}{pos}(1,i)=E_norm_temp(1,1) - findFirstMin{packagenumber}{positionnumber}{pos}(:,i); if pos==1 dropBeforeMax_posA(c,i)=dropBeforeMax_Esensor{packagenumber}{positionnumber}{pos}(1,i); else dropBeforeMax_posB(c,i)=dropBeforeMax_Esensor{packagenumber}{positionnumber}{pos}(1,i); end impedances_all_min(1,packagenumber)=min(E_norm{packagenumber}{positionnumber}{pos}(:,i)); %Fins maximum
impedances_all_max(1,packagenumber)=max(E_norm{packagenumber}{positionnumber}{pos}(:,i)); end y_min=min(impedances_all_min)-0.20; %The minimum y-value in the coming plot
y_max=max(impedances_all_max)+0.20; %The maximum y-value in the coming plot
min_length=min(lengths); common_time=times(1:min_length); for packagenumber =[1:numberofpackages] filename=strcat(M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),'_',num2str(positionnumber),positionletter(pos),'_lf.csv'); if ~exist(filename,'file'), continue, end %%%%%%PLOTTING EACH E-SENSOR IMPEDANCE FOR SEVERAL POSITIONS IN ONE PLOT%%%%%%
E_norm_temp=E_norm{packagenumber}{positionnumber}{pos}(:,i); E_norm_temp_truncated=E_norm_temp(1:min_length,1); figurename=strcat('E ',num2str(i),M_G_gsm(1),'_',M_G_gsm(2),'_','all_packages ','position ',num2str(positionnumber),positionletter(pos)); outfile=fullfile(figuresdir,strcat(figurename,'.png')); outfile2=fullfile(figuresdir,strcat(figurename,'.fig')); f=figure(1); hold on legendstr=sprintf('Package %d , pos %d%c',packagenumber,positionnumber,char('A'+ pos-1)); hL(packagenumber,1)=plot(common_time,E_norm_temp_truncated,'displayname',legendstr); ylabel('Biotac Impedance [k \Omega]'); title(['E',num2str(i),M_G_gsm(1),M_G_gsm(2),gsm,'all packages ','position ',num2str(positionnumber),positionletter(pos)]); xlabel('Time'); ylim([y_min y_max]); legend; end set(f,'position',[x0,y0,width,height]); saveas(f,outfile); saveas(f,outfile2); clf(f); end endendtempE2A=dropBeforeMax_posA(:,2);tempE2B=dropBeforeMax_posB(:,2);AVG_dropBeforeMax_posA_E2=mean(tempE2A(tempE2A>0));AVG_dropBeforeMax_posB_E2=mean(tempE2B(tempE2B>0));tempE12A=dropBeforeMax_posA(:,12);tempE12B=dropBeforeMax_posB(:,12);AVG_dropBeforeMax_posA_E12=mean(tempE12A(tempE12A>0));AVG_dropBeforeMax_posB_E12=mean(tempE12B(tempE12B>0)); %%for packagenumber =[1:numberofpackages]; for pos=[1:2] for i=[2,3,5,7,8,9,10,12,13,15] lengths=5000*ones(1,numberofpositions); impedances_all_max=0.00001*ones(1,numberofpositions); impedances_all_min=5000*ones(1,numberofpositions); for positionnumber=[1:numberofpositions] filename=strcat(M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),'_',num2str(positionnumber),positionletter(pos),'_lf.csv'); if ~exist(filename,'file'), continue, end lengths(1,positionnumber)=length(E_norm{packagenumber}{positionnumber}{pos}(:,i)); impedances_all_min(1,positionnumber)=min(E_norm{packagenumber}{positionnumber}{pos}(:,i)); %Fins maximum impedances_all_max(1,positionnumber)=max(E_norm{packagenumber}{positionnumber}{pos}(:,i)); end y_min=min(impedances_all_min)-0.20; %The minimum y-value in the coming plot y_max=max(impedances_all_max)+0.20; %The maximum y-value in the coming plot min_length=min(lengths); common_time=times(1:min_length); for positionnumber=[1:numberofpositions] filename=strcat(M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),'_',num2str(positionnumber),positionletter(pos),'_lf.csv'); if ~exist(filename,'file'), continue, end figuresdir2 = strcat('D:\thesis_figures\PositionComparison\',M_G_gsm(1),'_',M_G_gsm(2),'_',gsm,'_','P',num2str(packagenumber),'_positions 1-',positions,'_',positionletter(pos),'\'); mkdir(figuresdir2); %The figure folder for each package is created %addpath(figuresdir); %The figure folder for each package is added to the path so that MATLAB can actually put files in there
%%%%%%PLOTTING EACH E-SENSOR IMPEDANCE FOR SEVERAL POSITIONS IN ONE PLOT%%%%%% E_norm_temp=E_norm{packagenumber}{positionnumber}{pos}(:,i); E_norm_temp_truncated=E_norm_temp(1:min_length,1); figurename2=strcat('E ',num2str(i),M_G_gsm(1),'_',M_G_gsm(2),'_','P',num2str(packagenumber),' positions 1-',positions,positionletter(pos)); outfile=fullfile(figuresdir2,strcat(figurename2,'.png')); outfile2=fullfile(figuresdir2,strcat(figurename2,'.fig')); f=figure(2); hold on legendstr=sprintf('Position %d%c',positionnumber,char('A'+ pos-1)); hL(positionnumber,1)=plot(common_time,E_norm_temp_truncated,'displayname',legendstr); %plot(common_time,E_norm_temp_truncated);
%Plots all the impedance curves for the same sensor along different positions
ylabel('Biotac Impedance [k \Omega]'); title(['E',num2str(i),'-',M_G_gsm(1),'-',M_G_gsm(2),'-',gsm,'-','P',num2str(packagenumber),'_ ','positions 1-',positions,' ',positionletter(pos)]); xlabel('Time'); ylim([y_min y_max]); legend; end set(f,'position',[x0,y0,width,height]); saveas(f,outfile); saveas(f,outfile2); clf(f); end endend
Best Answer