diff --git a/crpptbx/gdat_plot.m b/crpptbx/gdat_plot.m
index 590723d689440692798649116478fd8c00619311..60183c72cec7aa405c0ac1704dfc531305fe90c2 100644
--- a/crpptbx/gdat_plot.m
+++ b/crpptbx/gdat_plot.m
@@ -2,7 +2,7 @@ function [fighandle]=gdat_plot(gdat_data,varargin);
 %
 % choices from doplot in gdat_data.gdat_params.doplot:
 %     doplot = 0: no plot
-%            = 1: new figure created
+%            = 1: new figure created (default if not given)
 %            = -1: add to current figure (with hold all)
 %            > 1: create new figure with this number, adding clf
 %            <-1: add to figure number abs(doplot) (with hold all)
@@ -27,25 +27,27 @@ else
   return
 end
 
-doplot=0;
+doplot=1;
 if isfield(gdat_plot_params,'doplot') && ~isempty(gdat_plot_params.doplot)
   doplot = gdat_plot_params.doplot;
 elseif isfield(gdat_data.gdat_params,'doplot') || ~isempty(gdat_data.gdat_params.doplot)
-  doplot = gdat_data.gdat_params.doplot;
+  if gdat_data.gdat_params.doplot~=0 % assume one does not call gdat_plot not to plot
+    doplot = gdat_data.gdat_params.doplot;
+  end
 end
 if doplot==0; return; end
 
 if all(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty(gdat_data.t)
   fighandle = get(0,'CurrentFigure');
-  if gdat_data.gdat_params.doplot == 1
+  if doplot == 1
     fighandle = figure;
-  elseif gdat_data.gdat_params.doplot > 1
-    fighandle = figure(gdat_data.gdat_params.doplot);
+  elseif doplot > 1
+    fighandle = figure(doplot);
     clf;
-  elseif gdat_data.gdat_params.doplot == -1
+  elseif doplot == -1
     hold all
-  elseif gdat_data.gdat_params.doplot < -1
-    fighandle = figure(abs(gdat_data.gdat_params.doplot));
+  elseif doplot < -1
+    fighandle = figure(abs(doplot));
     hold all
   end
   if strcmp(gdat_data.gdat_request,'eqdsk')