Advertisement
314K

Lab 1b raman

Mar 22nd, 2025
355
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 3.93 KB | None | 0 0
  1. clear
  2. close all
  3. clc
  4.  
  5. %%
  6.  
  7. labels{1} = 'pristine';
  8. labels{2} = 'gold-doped';
  9. labels{3} = 'platinum-doped';
  10.  
  11. data{1} = load('pris.txt');
  12. data{2} = load('Au.txt');
  13. data{3} = load('Pt.txt');
  14.  
  15. faint = 0.25;
  16. clr_f{1} = [0.6350 0.0780 0.1840 faint];
  17. clr_f{2} = [0.4660 0.6740 0.1880 faint];
  18. clr_f{3} = [0 0.4470 0.7410 faint];
  19. clr_f{4} = [0.4940 0.1840 0.5560 faint];
  20.  
  21. % data_smooth = cell(1,4);
  22. % for i = 1:length(data)
  23. %     x = data{i}(:,1);
  24. %     y = data{i}(:,2);
  25. %     yy = smooth(y,'rlowess')
  26. %     data_smooth{i} = yy;
  27. % end
  28.  
  29. clr{1} = [0.6350 0.0780 0.1840];
  30. clr{2} = [0.4660 0.6740 0.1880];
  31. clr{3} = [0 0.4470 0.7410];
  32. clr{4} = [0.4940 0.1840 0.5560];
  33.  
  34.  
  35. figure
  36.  
  37. val_range{1} = [100 240];
  38. val_range{2} = [1250 1400];
  39. val_range{3} = [1540 1640];
  40. val_range{4} = [2500 2750];
  41. span = [0.05 0.5 0.25 0.4];
  42.  
  43. ylims{1} = [40 140];
  44. ylims{2} = [40 90];
  45. ylims{3} = [0 400];
  46. ylims{4} = [40 100];
  47.  
  48.  
  49. for i = 1:length(val_range)
  50.     A = find(data{1}(:,1) >= val_range{i}(1), 1);
  51.     B = find(data{1}(:,1) >= val_range{i}(2), 1);
  52.     ind_range{i} = [A:B];
  53. end
  54. for i = 1:length(data)
  55.    
  56.     subplot(2,length(val_range),[1:length(val_range)])
  57.     hold on
  58.     grid on
  59.     plot(data{i}(:,1),data{i}(:,2),'-','color',clr{i})
  60.     xlabel('wavenumber, cm^{-1}')
  61.     ylabel('intensity, a.u.')
  62.     legend(labels)
  63.     ftype()
  64.     ylim([0 400])
  65.    
  66.     for j = 1:length(val_range)
  67.         subplot(2,length(val_range),length(val_range)+j)
  68.         [x1,y1,yy1] = smoother(data{i},ind_range{j},span(j));
  69.         hold on
  70.         grid on
  71.         plot(x1,y1,'color',clr_f{i})
  72.         plot(x1,yy1,'color',clr{i},'Linewidth',2)
  73.         xlim(val_range{j})
  74.         xlabel('wavenumber, cm^{-1}')
  75.         ylabel('intensity, a.u.')
  76.         ylim(ylims{j})
  77.         ftype()
  78.     end
  79.  
  80. %     for j = 1:length(val_range)
  81. %         subplot(2,length(val_range),length(val_range)+j)
  82. %         hold on
  83. %         grid on
  84. %         [x1,y1,yy1] = fitter(data{i},ind_range{j},fit_types(j));
  85. %         xlim(val_range{j})
  86. %         xlabel('wavenumber, cm^{-1}')
  87. %         ylabel('intensity, a.u.')
  88. %         ftype()
  89. %     end
  90.    
  91. %     subplot(2,4,5)
  92. %     [x1,y1,yy1] = smoother(data{i},ind_range{1});
  93. %     hold on
  94. %     grid on
  95. %     plot(x1,y1,'color',clr_f{i})
  96. %     plot(x1,yy1,'color',clr{i})
  97. %     xlim(val_range{1})
  98. %     xlabel('wavenumber, cm^{-1}')
  99. %     ylabel('intensity, a.u.')
  100. %    
  101. %     subplot(2,4,6)
  102. %     [x,y,yy] = smoother(data{i},ind_range{2});
  103. %     hold on
  104. %     grid on
  105. %     plot(x,y,'color',clr_f{i})
  106. %     plot(x,yy,'color',clr{i})
  107. %     xlim(val_range{2})
  108. %     xlabel('wavenumber, cm^{-1}')
  109. %     ylabel('intensity, a.u.')
  110. %    
  111. %     subplot(2,4,7)
  112. %     [x,y,yy] = smoother(data{i},ind_range{3});
  113. %     hold on
  114. %     grid on
  115. %     plot(x,y,'color',clr_f{i})
  116. %     plot(x,yy,'color',clr{i})
  117. %     xlim(val_range{3})
  118. %     xlabel('wavenumber, cm^{-1}')
  119. %     ylabel('intensity, a.u.')
  120. %    
  121. %     subplot(2,4,8)
  122. %     [x,y,yy] = smoother(data{i},ind_range{4});
  123. %     hold on
  124. %     grid on
  125. %     plot(x,y,'color',clr_f{i})
  126. %     plot(x,yy,'color',clr{i})
  127. %     xlim(val_range{4})
  128. %     xlabel('wavenumber, cm^{-1}')
  129. %     ylabel('intensity, a.u.')
  130. end
  131.  
  132.  
  133. %%
  134.  
  135. function [x,y,yy] = smoother(data,range,span);
  136. x = data(range,1);
  137. y = data(range,2);
  138. yy = smooth(y,span,'loess');
  139. end
  140. %{
  141. function [x,y,yy] = fitter(data,range,degree)
  142.  
  143. faint = 0.25;
  144. clr_f{1} = [0.6350 0.0780 0.1840 faint];
  145. clr_f{2} = [0.4660 0.6740 0.1880 faint];
  146. clr_f{3} = [0 0.4470 0.7410 faint];
  147. clr_f{4} = [0.4940 0.1840 0.5560 faint];
  148.  
  149. clr{1} = [0.6350 0.0780 0.1840];
  150. clr{2} = [0.4660 0.6740 0.1880];
  151. clr{3} = [0 0.4470 0.7410];
  152. clr{4} = [0.4940 0.1840 0.5560];
  153.  
  154. x = data(range,1);
  155. y = data(range,2);
  156. F = fit(x,y,degree);
  157.  
  158. plot(x,y,'color',clr_f{i})
  159. plot(F,x,y,'color',clr{i})
  160. end
  161. %}
  162.  
  163. function ftype()
  164. set(gca,'FontSize',13,'fontWeight','bold')
  165. set(findall(gcf,'type','text'),'FontSize',13,'fontWeight','bold')
  166. end
  167.  
  168.  
  169.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement