function MakeMonitorPlots(computer_measurements,fill_order,engines,printers,...
   simPrintColors,bestspec,SaveAllPlots),
 

for engine_num = 1:length(computer_measurements.engine),
   for printer_num = 1:length(computer_measurements.engine(engine_num).printer),
      % Uncomment this code if you want plots of each individual gamut
      % on its own figure.
      %================================================================
      %for sim_num = 1:2,
      %   f = figure;
      %   fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(sim_num).xy(1,fill_order),...
      %      computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(sim_num).xy(2,fill_order),'b*');
      %   hold on;
      %   plot(computer_measurements.whitepoint.xy(1),computer_measurements.whitepoint.xy(2),'co');
      %   plot(bestspec(1,:),bestspec(2,:),'r');
      %   axis([0 .9 0 .9]);
      %   axis square;
      %   ylabel('y chromaticity');
      %   xlabel('x chromaticity');
      %   title(sprintf('%s%s\n%s','Gamut -- ',simPrintColors{sim_num},[printers(printer_num).name{1},'::',engines(engine_num).name{1}]));
      %   legend('White Point','Ideal Gamut',simPrintColors{sim_num});
      %   if (SaveAllPlots == 1),
      %      print( f, '-djpeg90', ['gamutE',num2str(engine_num),'P',num2str(printer_num),'S',num2str(sim_num),'.jpg']);
      %   end
      %end
 
      % Plot Gamut/No Simulation along with Gamut/Simulation on the same axes
      %======================================================================
      f = figure;
      fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(1).xy(1,fill_order),...
         computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(1).xy(2,fill_order),'b*');
      hold on;
      fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).xy(1,fill_order),...
         computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).xy(2,fill_order),'r*');
      plot(computer_measurements.whitepoint.xy(1),computer_measurements.whitepoint.xy(2),'co');
      plot(bestspec(1,:),bestspec(2,:),'r');
      axis([0 .9 0 .9]);
      axis square;
      ylabel('y chromaticity');
      xlabel('x chromaticity');
      title(sprintf('%s\n%s','Gamut Comparison',[printers(printer_num).name{1},'::',engines(engine_num).name{1}]));
      legend('White Point','Ideal Gamut',simPrintColors{1},simPrintColors{2});
      if (SaveAllPlots == 1),
         print( f, '-djpeg90', ['Mgamut2E',num2str(engine_num),'P',num2str(printer_num),'.jpg']);
      end
 
      if (~isempty(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).convertxy)),
         % Plot Convert RGB->CMYK data along with RGB values before the
         % convert took place
         %=================================================================
         f = figure;
         fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).xy(1,1:3),...
            computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).xy(2,1:3),'r*');
         hold on;
         fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).convertxy(1,1:3),...
            computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).convertxy(2,1:3),'b*');
         plot(computer_measurements.whitepoint.xy(1),computer_measurements.whitepoint.xy(2),'co');
         plot(bestspec(1,:),bestspec(2,:),'r');
         axis([0 .9 0 .9]);
         axis square;
         ylabel('y chromaticity');
         xlabel('x chromaticity');
         title(sprintf('%s\n%s','Gamut Comparison',[printers(printer_num).name{1},'::',engines(engine_num).name{1}]));
         legend('White Point','Ideal Gamut','Original RGB','RGB->CMYK');
         if (SaveAllPlots == 1),
            print( f, '-djpeg90', ['MgamutCRE',num2str(engine_num),'P',num2str(printer_num),'.jpg']);
         end
 
         % Plot Convert CMYK->RGB data along with CMYK values before the
         % convert took place
         %=================================================================
         f = figure;
         fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).xy(1,4:6),...
            computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).xy(2,4:6),'r*');
         hold on;
         fill(computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).convertxy(1,4:6),...
            computer_measurements.engine(engine_num).printer(printer_num).simPrintColors(2).convertxy(2,4:6),'b*');
         plot(computer_measurements.whitepoint.xy(1),computer_measurements.whitepoint.xy(2),'co');
         plot(bestspec(1,:),bestspec(2,:),'r');
         axis([0 .9 0 .9]);
         axis square;
         ylabel('y chromaticity');
         xlabel('x chromaticity');
         title(sprintf('%s\n%s','Gamut Comparison',[printers(printer_num).name{1},'::',engines(engine_num).name{1}]));
         legend('White Point','Ideal Gamut','Original CMYK','CMYK->RGB');
         if (SaveAllPlots == 1),
            print( f, '-djpeg90', ['MgamutCCE',num2str(engine_num),'P',num2str(printer_num),'.jpg']);
         end
      end
   end
end

% Plot Convert RGB->CMYK data for each engine on the same axis
%==============================================================
f = figure;
fill(computer_measurements.engine(1).printer(3).simPrintColors(2).convertxy(1,1:3),...
   computer_measurements.engine(1).printer(3).simPrintColors(2).convertxy(2,1:3),'r*');
hold on;
fill(computer_measurements.engine(2).printer(3).simPrintColors(2).convertxy(1,1:3),...
   computer_measurements.engine(2).printer(3).simPrintColors(2).convertxy(2,1:3),'b*');
plot(computer_measurements.whitepoint.xy(1),computer_measurements.whitepoint.xy(2),'co');
plot(bestspec(1,:),bestspec(2,:),'r');
axis([0 .9 0 .9]);
axis square;
ylabel('y chromaticity');
xlabel('x chromaticity');
title(sprintf('%s\n%s','Gamut Comparison',[printers(printer_num).name{1},'::',engines(engine_num).name{1}]));
legend('White Point','Ideal Gamut','Engine 1 RGB->CMYK','Engine 2 RGB->CMYK');
if (SaveAllPlots == 1),
   print( f, '-djpeg90', ['MgamutCR','.jpg']);
end

% Plot Convert CMYK->RGB data for each engine on the same axis
%==============================================================
f = figure;
fill(computer_measurements.engine(2).printer(3).simPrintColors(2).convertxy(1,4:6),...
   computer_measurements.engine(2).printer(3).simPrintColors(2).convertxy(2,4:6),'b*');
hold on;
fill(computer_measurements.engine(1).printer(3).simPrintColors(2).convertxy(1,4:6),...
   computer_measurements.engine(1).printer(3).simPrintColors(2).convertxy(2,4:6),'r*');
plot(computer_measurements.whitepoint.xy(1),computer_measurements.whitepoint.xy(2),'co');
plot(bestspec(1,:),bestspec(2,:),'r');
axis([0 .9 0 .9]);
axis square;
ylabel('y chromaticity');
xlabel('x chromaticity');
title(sprintf('%s\n%s','Gamut Comparison',[printers(printer_num).name{1},'::',engines(engine_num).name{1}]));
legend('White Point','Ideal Gamut','Engine 2 CMYK->RGB','Engine 1 CMYK->RGB');
if (SaveAllPlots == 1),
   print( f, '-djpeg90', ['MgamutCC','.jpg']);
end