M = wh.parameter.M.values(1); datarate = wh.parameter.datarate.values(1); sir = wh.parameter.sir.values; laser_linewidth = wh.parameter.laser_linewidth.values(1); pn_key = wh.parameter.pn_key.values; rop = wh.parameter.rop.values(1); cols = linspecer(4); cnt = 0; for pnk = pn_key cnt = cnt+1; ber_ffe = wh.getStoValue('ber_ffe',M,datarate,sir,laser_linewidth,pnk,rop); ber_dcavg = wh.getStoValue('ber_dcavg',M,datarate,sir,laser_linewidth,pnk,rop); ber_adapt = wh.getStoValue('ber_adapt',M,datarate,sir,laser_linewidth,pnk,rop); ber_derem = wh.getStoValue('ber_dcrem',M,datarate,sir,laser_linewidth,pnk,rop); % Create the initial plot figure(43); hold on; % Retain the plot so new points can be added without complete redraw plot(sir,ber_ffe',"LineWidth",1,"LineStyle","-","Marker",".","MarkerSize",10,"DisplayName","ber ffe",'Color',cols(1,:)); plot(sir,ber_dcavg',"LineWidth",1,"LineStyle","-","Marker",".","MarkerSize",10,"DisplayName","ber dcavg",'Color',cols(2,:)); plot(sir,ber_adapt',"LineWidth",1,"LineStyle","-","Marker",".","MarkerSize",10,"DisplayName","ber adapt",'Color',cols(3,:)); plot(sir,ber_derem',"LineWidth",1,"LineStyle","-","Marker",".","MarkerSize",10,"DisplayName","ber dcrem",'Color',cols(4,:)); end yline(3.8e-3,'DisplayName','HD-FEC'); xlabel('Signal to Interference Ratio (dB)'); ylabel('Bit Error Rate (BER)'); title('Bit Error Rate vs. SIR'); set(gca,'yscale','log'); grid on; legend