function [] = plotGenericResult(rowOfset, columnOfset, yLabel, appType, calculatePercentage) folderPath = getConfiguration(1); numOfSimulations = getConfiguration(3); stepOfxAxis = getConfiguration(4); scenarioType = getConfiguration(5); startOfMobileDeviceLoop = getConfiguration(10); stepOfMobileDeviceLoop = getConfiguration(11); endOfMobileDeviceLoop = getConfiguration(12); numOfMobileDevices = (endOfMobileDeviceLoop - startOfMobileDeviceLoop)/stepOfMobileDeviceLoop + 1; all_results = zeros(numOfSimulations, size(scenarioType,2), numOfMobileDevices); min_max_results = zeros(2, size(scenarioType,2), numOfMobileDevices); if ~exist('appType','var') appType = 'ALL_APPS'; end for s=1:numOfSimulations for i=1:size(scenarioType,2) for j=1:numOfMobileDevices try mobileDeviceNumber = startOfMobileDeviceLoop + stepOfMobileDeviceLoop * (j-1); filePath = strcat(folderPath,'\ite',int2str(s),'\SIMRESULT_',char(scenarioType(i)),'_NEXT_FIT_',int2str(mobileDeviceNumber),'DEVICES_',appType,'_GENERIC.log') readData = dlmread(filePath,';',rowOfset,0); value = readData(1,columnOfset); if(calculatePercentage==1) totalTask = readData(1,1)+readData(1,2); value = (100 * value) / totalTask; end all_results(s,i,j) = value; catch err error(err) end end end end if(numOfSimulations == 1) results = all_results; else results = mean(all_results); %still 3d matrix but 1xMxN format end results = squeeze(results); %remove singleton dimensions for i=1:size(scenarioType,2) for j=1:numOfMobileDevices x=all_results(:,i,j); % Create Data SEM = std(x)/sqrt(length(x)); % Standard Error ts = tinv([0.05 0.95],length(x)-1); % T-Score CI = mean(x) + ts*SEM; % Confidence Intervals if(CI(1) < 0) CI(1) = 0; end if(CI(2) < 0) CI(2) = 0; end min_max_results(1,i,j) = results(i,j) - CI(1); min_max_results(2,i,j) = CI(2) - results(i,j); end end types = zeros(1,numOfMobileDevices); for i=1:numOfMobileDevices types(i)=startOfMobileDeviceLoop+((i-1)*stepOfMobileDeviceLoop); end hFig = figure; set(hFig, 'Position',getConfiguration(7)); set(0,'DefaultAxesFontName','Times New Roman'); set(0,'DefaultTextFontName','Times New Roman'); set(0,'DefaultAxesFontSize',12); set(0,'DefaultTextFontSize',12); if(getConfiguration(20) == 1) for i=stepOfxAxis:stepOfxAxis:numOfMobileDevices xIndex=startOfMobileDeviceLoop+((i-1)*stepOfMobileDeviceLoop); markers = getConfiguration(50); for j=1:size(scenarioType,2) plot(xIndex, results(j,i),char(markers(j)),'MarkerFaceColor',getConfiguration(20+j),'color',getConfiguration(20+j)); hold on; end end for j=1:size(scenarioType,2) if(getConfiguration(19) == 1) errorbar(types, results(j,:), min_max_results(1,j,:),min_max_results(2,j,:),':k','color',getConfiguration(20+j),'LineWidth',1.5); else plot(types, results(j,:),':k','color',getConfiguration(20+j),'LineWidth',1.5); end hold on; end set(gca,'color','none'); else markers = getConfiguration(40); for j=1:size(scenarioType,2) if(getConfiguration(19) == 1) errorbar(types, results(j,:),min_max_results(1,j,:),min_max_results(2,j,:),char(markers(j)),'MarkerFaceColor','w','LineWidth',1.4); else plot(types, results(j,:),char(markers(j)),'MarkerFaceColor','w','LineWidth',1.4); end hold on; end %set(gcf, 'Position',getConfiguration(28)); end lgnd = legend(getConfiguration(6),'Location','NorthWest'); if(getConfiguration(20) == 1) set(lgnd,'color','none'); end hold off; axis square xlabel(getConfiguration(9)); set(gca,'XTick', (stepOfxAxis*stepOfMobileDeviceLoop):(stepOfxAxis*stepOfMobileDeviceLoop):endOfMobileDeviceLoop); ylabel(yLabel); set(gca,'XLim',[startOfMobileDeviceLoop-5 endOfMobileDeviceLoop+5]); set(get(gca,'Xlabel'),'FontSize',12) set(get(gca,'Ylabel'),'FontSize',12) set(lgnd,'FontSize',12) end