From 2c327d1ade2bef538e621ae2c4c6e5d7ed9f2e81 Mon Sep 17 00:00:00 2001
From: Olivier Sauter <olivier.sauter@epfl.ch>
Date: Mon, 8 May 2017 20:54:24 +0000
Subject: [PATCH] add more traces for d3d, adapt gdat_plot when labels have
 cells

git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@7304 d63d8f72-b253-0410-a779-e742ad2e26cf
---
 crpptbx/D3D/d3d_requests_mapping.m | 158 +++++++++++------------------
 crpptbx/D3D/gdat_d3d.m             |  16 ++-
 crpptbx/gdat_plot.m                |   4 +-
 3 files changed, 74 insertions(+), 104 deletions(-)

diff --git a/crpptbx/D3D/d3d_requests_mapping.m b/crpptbx/D3D/d3d_requests_mapping.m
index 4ddb0741..81e31730 100644
--- a/crpptbx/D3D/d3d_requests_mapping.m
+++ b/crpptbx/D3D/d3d_requests_mapping.m
@@ -41,55 +41,28 @@ switch lower(data_request)
  case 'a_minor'
   mapping.timedim = 1;
   mapping.label = 'a\_minor';
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=''r_inboard'';' ...
-                    'gdat_tmp=gdat_d3d(shot,params_eff);gdat_tmp.r_inboard=gdat_tmp.data;' ...
-		    'params_eff.data_request=''r_outboard'';' ...
-		   'gdat_tmp2=gdat_d3d(shot,params_eff);gdat_tmp.r_outboard=gdat_tmp2.data;' ...
-		    'gdat_tmp.data = 0.5.*(gdat_tmp2.data-gdat_tmp.data);gdat_tmp.label=''' mapping.label ''';' ...
-		   'gdat_tmp.gdat_request=''' data_request ''';'];
+  mapping.method = 'signal';
+  mapping.expression = [{'EFIT03'},{'\aminor'}];
  case 'b0'
   mapping.timedim = 1;
   mapping.label = 'B_0';
   mapping.method = 'signal';
-  mapping.expression = [{'EFIT01'},{'\bcentr'}];
+  mapping.expression = [{'EFIT03'},{'\bcentr'}];
  case 'beta'
   mapping.timedim = 1;
   mapping.label = '\beta';
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=''betan'';' ...
-                    'gdat_tmp=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''ip'';gdat_tmp2=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''b0'';gdat_tmp3=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''a_minor'';gdat_tmp4=gdat_d3d(shot,params_eff);' ...
-		    'tmp_data_ip=interp1(gdat_tmp2.t,gdat_tmp2.data,gdat_tmp.t,[],NaN);' ...
-		    'tmp_data_b0=interp1(gdat_tmp3.t,gdat_tmp3.data,gdat_tmp.t,[],NaN);' ...
-		    'tmp_data_a=interp1(gdat_tmp4.t,gdat_tmp4.data,gdat_tmp.t,[],NaN);' ...
-		    'gdat_tmp.data = 0.01.*abs(gdat_tmp.data.*tmp_data_ip./1e6./tmp_data_a./tmp_data_b0);'];
+  mapping.method = 'signal';
+  mapping.expression = [{'EFIT03'},{'\betat'}];
  case 'betan'
   mapping.timedim = 1;
   mapping.label = '\beta_N';
   mapping.method = 'signal';
-  mapping.expression = [{'TOT'},{'beta_N'}];
-  % in many cases, in particular just after an experiment, betaN is not present in TOT, thus compute it from 2/3Wmhd/V /(B0^2/2mu0)
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''TOT''},{''beta_2N''}];' ...
-                    'gdat_tmp=gdat_d3d(shot,params_eff); if isempty(gdat_tmp.data);' ...
-		    'params_eff.data_request=''ip'';gdat_ip=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''b0'';gdat_b0=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''a_minor'';gdat_aminor=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''wmhd'';gdat_tmp=gdat_d3d(shot,params_eff);' ...
-		    'params_eff.data_request=''volume'';gdat_vol=gdat_d3d(shot,params_eff);' ...
-		    'tmp_data_ip=interp1(gdat_ip.t,gdat_ip.data,gdat_tmp.t,[],NaN);' ...
-		    'tmp_data_b0=interp1(gdat_b0.t,gdat_b0.data,gdat_tmp.t,[],NaN);' ...
-		    'tmp_data_a=interp1(gdat_aminor.t,gdat_aminor.data,gdat_tmp.t,[],NaN);' ...
-		    'tmp_data_vol=interp1(gdat_vol.t,gdat_vol.data,gdat_tmp.t,[],NaN);' ...
-		    'gdat_tmp.data = 100.*abs(2./3.*gdat_tmp.data./tmp_data_vol.*8e-7.*pi./tmp_data_b0.^2./tmp_data_ip.*1e6.*tmp_data_a.*tmp_data_b0);end;'];
+  mapping.expression = [{'EFIT03'},{'\betan'}];
  case 'betap'
   mapping.timedim = 1;
   mapping.label = '\beta_p';
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'betpol'}];
+  mapping.expression = [{'EFIT03'},{'\betap'}];
  case {'cxrs', 'cxrs_rho'}
   mapping.timedim = 2;
   mapping.label = 'cxrs';
@@ -106,12 +79,12 @@ switch lower(data_request)
   mapping.label = 'delta\_top';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'OT01'},{'\tritop'}];
+  mapping.expression = [{'EFIT03'},{'\tritop'}];
  case 'delta_bottom'
   mapping.label = 'delta\_bottom';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'OT01'},{'\tribot'}];
+  mapping.expression = [{'EFIT03'},{'\tribot'}];
  case {'ece', 'ece_rho'}
   mapping.timedim = 1;
   mapping.method = 'switchcase';
@@ -130,15 +103,10 @@ switch lower(data_request)
   mapping.method = 'signal';
   mapping.expression = [{'SPECTROSCOPY'},{'\fs04'}];
  case 'h_scalings'
-  mapping.label = 'H_{scal}';
+  mapping.label = 'H_{98y2}';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'TTH'},{'H/L-facs'}];
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''TTH''},{''Wmhd''}];' ...
-		   'gdat_tmp=gdat_d3d(shot,params_eff);ij=find(~isnan(gdat_tmp.data)); gdat_tmp.data_raw=gdat_tmp.data;' ...
-		    'tmp_data=interpos(gdat_tmp.t(ij),gdat_tmp.data(ij),gdat_tmp.t,-1e5);' ...
-		    'gdat_tmp.data = max(tmp_data,0.);'];
+  mapping.expression = [{'EFIT02'},{'results.confinement.times.scalings:h_thh98y2'}];
  case 'ioh'
   mapping.timedim = 1;
   mapping.label = 'I ohmic transformer';
@@ -148,27 +116,27 @@ switch lower(data_request)
   mapping.timedim = 1;
   mapping.label = 'Plasma current';
   mapping.method = 'signal';
-  mapping.expression = [{'efit01'},{'\cpasma'}];
+  mapping.expression = [{'efit03'},{'\cpasma'}];
  case 'kappa'
   mapping.timedim = 1;
   mapping.label = '\kappa';
   mapping.method = 'signal';
-  mapping.expression = [{'efit01'},{'\kappa'}];
- case 'kappa_top'
-  mapping.timedim = 1;
-  mapping.label = '\kappa^{top}';
-  mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'koben'}];
- case 'kappa_bottom'
-  mapping.timedim = 1;
-  mapping.label = '\kappa_{bottom}';
-  mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'kuntn'}];
+  mapping.expression = [{'efit03'},{'\kappa'}];
+% $$$  case 'kappa_top'
+% $$$   mapping.timedim = 1;
+% $$$   mapping.label = '\kappa^{top}';
+% $$$   mapping.method = 'signal';
+% $$$   mapping.expression = [{'EFIT03'},{'kappa'}];
+% $$$  case 'kappa_bottom'
+% $$$   mapping.timedim = 1;
+% $$$   mapping.label = '\kappa_{bottom}';
+% $$$   mapping.method = 'signal';
+% $$$   mapping.expression = [{'FPG'},{'kuntn'}];
  case 'li'
   mapping.timedim = 1;
   mapping.label = 'l_i';
   mapping.method = 'signal';
-  mapping.expression = [{'efit01'},{'\li3'}];
+  mapping.expression = [{'efit03'},{'\li3'}];
  case 'mhd'
   mapping.timedim = 1;
   mapping.label = 'Odd and Even n';
@@ -190,9 +158,14 @@ switch lower(data_request)
 		    'gdat_tmp.gdat_request=''mhd'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;'];
  case 'nbi'
   mapping.timedim = 1;
-  mapping.label = 'Pnbi';
-  mapping.method = 'signal';
-  mapping.expression = [{'nb'},{'pinj'}];
+  mapping.label = 'Pnbi [W]';
+% $$$   mapping.method = 'signal';
+% $$$   mapping.expression = [{'nb'},{'pinj'}]; % in kW, use expression to have it in W
+  mapping.method = 'expression';
+  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''nb''},{''pinj''}];' ...
+                    'gdat_tmp=gdat_d3d(shot,params_eff);gdat_tmp.units=''W'';' ...
+		    'gdat_tmp.data = 1e3.*gdat_tmp.data;gdat_tmp.label=''' mapping.label ''';' ...
+                    'gdat_tmp.gdat_request=''' data_request ''';'];
  case 'ne'
   mapping.timedim = 2;
   mapping.method = 'switchcase';
@@ -205,7 +178,7 @@ switch lower(data_request)
   mapping.timedim = 1;
   mapping.label = 'NEBAR\_R0';
   mapping.method = 'signal';
-  mapping.expression = [{'efit01'},{'\NEBAR_R0'}];
+  mapping.expression = [{'efit03'},{'\NEBAR_R0'}];
  case 'ne_rho'
   mapping.timedim = 2;
   mapping.label = 'ne';
@@ -226,29 +199,29 @@ switch lower(data_request)
   mapping.method = 'switchcase';
  case 'psi_axis'
   mapping.timedim = 1;
-  mapping.method = 'switchcase'; % there is psi_axis-psi_edge in FPG but otherwise complicated to get from equil, thus needs swticth case
   mapping.label ='psi_\axis' ;
+  mapping.method = 'signal';
+  mapping.expression = [{'EFIT03'},{'\ssimag'}];
  case 'psi_edge'
   mapping.timedim = 1;
-  mapping.method = 'switchcase'; % is set to zero, so not in tree nodes
   mapping.label = 'psi\_edge';
+  mapping.method = 'signal';
+  mapping.expression = [{'EFIT03'},{'\ssibry'}];
  case 'q0'
   mapping.timedim = 1;
   mapping.label = 'q_0';
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'q0'}];
+  mapping.expression = [{'EFIT03'},{'\q0'}];
  case 'q95'
   mapping.timedim = 1;
   mapping.label = 'q_{95}';
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'q95'}];
+  mapping.expression = [{'EFIT03'},{'\q95'}];
  case 'q_edge'
   mapping.timedim = 1;
   mapping.label = 'q_{edge}}';
-  mapping.method = 'expression';
-  mapping.method = 'switchcase';
-  mapping.expression = [{'FPG'},{'q95'}];
-  mapping.expression = [];
+  mapping.method = 'signal';
+  mapping.expression = [{'EFIT03'},{'\ql'}];
  case 'q_rho'
   mapping.timedim = 2;
   mapping.gdat_timedim = 2;
@@ -258,17 +231,17 @@ switch lower(data_request)
   mapping.timedim = 1;
   mapping.label = 'R_0';
   mapping.method = 'signal';
-  mapping.expression = [{'EFIT01'},{'\rzero'}];
+  mapping.expression = [{'EFIT03'},{'\rzero'}];
  case 'rgeom'
   mapping.label = 'Rgeom';
   mapping.timedim = 1;
   mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=''r_inboard'';' ...
-                    'gdat_tmp=gdat_d3d(shot,params_eff);gdat_tmp.r_inboard=gdat_tmp.data;' ...
-		    'params_eff.data_request=''r_outboard'';' ...
-		   'gdat_tmp2=gdat_d3d(shot,params_eff);gdat_tmp.r_outboard=gdat_tmp2.data;' ...
-		    'gdat_tmp.data = 0.5.*(gdat_tmp2.data+gdat_tmp.data);gdat_tmp.label=''' mapping.label ''';' ...
-		   'gdat_tmp.gdat_request=''' data_request ''';'];
+  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''EFIT03''},{''results.geqdsk:rbbbs''}];' ...
+                    'gdat_tmp2=gdat_d3d(shot,params_eff);params_eff = gdat_data.gdat_params;' ...
+                    'params_eff.data_request=[{''EFIT03''},{''\zmaxis''}];gdat_tmp=gdat_d3d(shot,params_eff);' ...
+                    'ij=find(gdat_tmp2.data==0);if (~isempty(ij));gdat_tmp2.data(ij)=NaN;end;' ...
+		    'gdat_tmp.data = 0.5.*(nanmax(gdat_tmp2.data'',[],2)+nanmin(gdat_tmp2.data'',[],2));gdat_tmp.label=''' mapping.label ''';' ...
+                    'gdat_tmp.gdat_request=''' data_request ''';'];
  case 'r_inboard'
   mapping.label = 'R\_inboard';
   mapping.timedim = 1;
@@ -299,7 +272,7 @@ switch lower(data_request)
   mapping.label = 'R\_magaxis';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'Rmag'},{'D3DD'}];
+  mapping.expression = [{'EFIT03'},{'\rmaxis'}];
  case 'sxr'
   mapping.timedim = 1;
   mapping.gdat_timedim = 2;
@@ -323,18 +296,13 @@ switch lower(data_request)
  case 'vloop'
   mapping.label = 'Vloop';
   mapping.timedim = 1;
-  % mapping.method = 'signal';
-  % mapping.expression = [{'MAG'},{'ULid12'},{'D3DD'}];
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''MAG''},{''ULid12''},{''D3DD''}];' ...
-		   'gdat_tmp=gdat_d3d(shot,params_eff);ij=find(~isnan(gdat_tmp.data));' ...
-		    'tmp_data=interpos(gdat_tmp.t,gdat_tmp.data,-3e4);' ...
-		    'gdat_tmp.data_smooth = tmp_data;gdat_tmp.gdat_request=''vloop'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;'];
+  mapping.method = 'signal';
+  mapping.expression = [{'EFIT03'},{'\vloopmhd'}];
  case 'volume'
   mapping.label = 'Volume';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'Vol'},{'D3DD'}];
+  mapping.expression = [{'EFIT03'},{'\volume'}];
  case 'volume_rho'
   mapping.timedim = 2;
   mapping.label = 'volume\_norm';
@@ -343,12 +311,7 @@ switch lower(data_request)
   mapping.label = 'Wmhd';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'Wmhd'},{'D3DD'}];
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''FPG''},{''Wmhd''},{''D3DD''}];' ...
-		   'gdat_tmp=gdat_d3d(shot,params_eff);ij=find(~isnan(gdat_tmp.data)); gdat_tmp.data_raw=gdat_tmp.data;' ...
-		    'tmp_data=interpos(gdat_tmp.t(ij),gdat_tmp.data(ij),gdat_tmp.t,-1e5);' ...
-		    'gdat_tmp.data = max(tmp_data,0.);'];
+  mapping.expression = [{'EFIT03'},{'\Wmhd'}];
  case 'zeff'
   mapping.label = 'zeff from cxrs';
   mapping.timedim = 1;
@@ -358,18 +321,17 @@ switch lower(data_request)
   mapping.label = 'Zgeom';
   mapping.timedim = 1;
   mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''FPG''},{''Zoben''},{''D3DD''}];' ...
-                    'gdat_tmp=gdat_d3d(shot,params_eff);gdat_tmp.z_top=gdat_tmp.data;' ...
-		    'params_eff.data_request=[{''FPG''},{''Zunt''},{''D3DD''}];' ...
-		   'gdat_tmp2=gdat_d3d(shot,params_eff);gdat_tmp.z_bottom=gdat_tmp2.data;' ...
-		    'gdat_tmp.data = 0.5.*(gdat_tmp2.data+gdat_tmp.data);gdat_tmp.label=''' mapping.label ''';' ...
-		   'gdat_tmp.gdat_request=''' data_request ''';'];
-
+  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=[{''EFIT03''},{''results.geqdsk:zbbbs''}];' ...
+                    'gdat_tmp2=gdat_d3d(shot,params_eff);params_eff = gdat_data.gdat_params;' ...
+                    'params_eff.data_request=[{''EFIT03''},{''\zmaxis''}];gdat_tmp=gdat_d3d(shot,params_eff);' ...
+                    'ij=find(gdat_tmp2.data==0);if (~isempty(ij));gdat_tmp2.data(ij)=NaN;end;' ...
+		    'gdat_tmp.data = 0.5.*(nanmax(gdat_tmp2.data'',[],2)+nanmin(gdat_tmp2.data'',[],2));gdat_tmp.label=''' mapping.label ''';' ...
+                    'gdat_tmp.gdat_request=''' data_request ''';'];
  case 'zmag'
   mapping.label = 'Z\_magaxis';
   mapping.timedim = 1;
   mapping.method = 'signal';
-  mapping.expression = [{'FPG'},{'Zmag'},{'D3DD'}];
+  mapping.expression = [{'EFIT03'},{'\zmaxis'}];
   %
   % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   % extra D3D cases (not necessarily in official data_request name list)
diff --git a/crpptbx/D3D/gdat_d3d.m b/crpptbx/D3D/gdat_d3d.m
index d20e5db5..15bd5c09 100644
--- a/crpptbx/D3D/gdat_d3d.m
+++ b/crpptbx/D3D/gdat_d3d.m
@@ -254,7 +254,9 @@ if strcmp(mapping_for_d3d.method,'signal')
   if ~isfield(gdat_data.gdat_params,'source') || isempty(gdat_data.gdat_params.source) || ~ischar(gdat_data.gdat_params.source)
     gdat_data.gdat_params.source = mapping_for_d3d.expression{1};
   else
+    mapping_for_d3d.expression{1} = gdat_data.gdat_params.source;
   end
+  gdat_data.gdat_params.source = mapping_for_d3d.expression{1};
   [shoteff,stat] = mdsopen(['atlas.gat.com::' mapping_for_d3d.expression{1}],shot);
   if shoteff~=shot
     disp('cannot open shot');
@@ -270,7 +272,7 @@ if strcmp(mapping_for_d3d.method,'signal')
     return
   end
   if iscell(gdat_data.label) && length(gdat_data.label)==2;
-    gdat_data.label = {[gdat_data.label{1} ' ' gdat_data.label{2}]};
+    gdat_data.label =  [gdat_data.label{1} ' ' gdat_data.label{2}];
   end
   gdat_data.data_fullpath=mapping_for_d3d.expression;
   % end of method "signal"
@@ -1151,6 +1153,9 @@ elseif strcmp(mapping_for_d3d.method,'switchcase')
       for i=1:length(labels)
 	if ~isempty(labels{i})
 	  icount=icount+1;
+          if icount==1 & ~iscell(gdat_data.label) 
+            gdat_data = rmfield(gdat_data,'label');
+          end
 	  gdat_data.label{icount} = labels{i};
 	end
       end
@@ -1165,6 +1170,7 @@ elseif strcmp(mapping_for_d3d.method,'switchcase')
     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    case {'powers'}
     sources_avail = {'ohm','ec','nbi','ic'}; % note should allow ech, nbh, ohmic in parameter sources
+    sources_avail = {'ohm','ec','nbi'}; % note should allow ech, nbh, ohmic in parameter sources
     for i=1:length(sources_avail)
       gdat_data.(sources_avail{i}).data = [];
       gdat_data.(sources_avail{i}).units = [];
@@ -1209,7 +1215,7 @@ elseif strcmp(mapping_for_d3d.method,'switchcase')
     % total of each source in .data, but full data in subfield like pgyro in .ec, to check for nbi
     params_eff = gdat_data.gdat_params;
     % ohmic, use its time-base
-    params_eff.data_request={'TOT','P_OH'};
+    params_eff.data_request={'EFIT03','\vloopmhd'}; %poh too noisy even if vloop*ip is not quite correct
     try
       ohm=gdat_d3d(shot,params_eff);
     catch
@@ -1217,6 +1223,9 @@ elseif strcmp(mapping_for_d3d.method,'switchcase')
       ohm.dim = [];
     end
     if ~isempty(ohm.data) && ~isempty(ohm.dim)
+      ip=gdat_d3d(shot,'ip');
+      ip_ohm=interp1(ip.t,ip.data,ohm.t);
+      ohm.data = ohm.data .* ip_ohm;
       for i=1:length(fields_to_copy)
 	if isfield(ohm,fields_to_copy{i})
 	  gdat_data.ohm.(fields_to_copy{i}) = ohm.(fields_to_copy{i});
@@ -1243,7 +1252,6 @@ elseif strcmp(mapping_for_d3d.method,'switchcase')
     %
     if any(strmatch('ec',gdat_data.gdat_params.source))
       % ec
-      params_eff.data_request={'ECS','PECRH'};
       params_eff.data_request='pgyro';
       try
 	ec=gdat_d3d(shot,params_eff);
@@ -1264,7 +1272,7 @@ elseif strcmp(mapping_for_d3d.method,'switchcase')
     %
     if any(strmatch('nb',gdat_data.gdat_params.source))
       % nbi
-      params_eff.data_request={'NIS','PNIQ'};
+      params_eff.data_request='nbi';
       try
 	nbi=gdat_d3d(shot,params_eff);
       catch
diff --git a/crpptbx/gdat_plot.m b/crpptbx/gdat_plot.m
index 5f12e909..295fe32a 100644
--- a/crpptbx/gdat_plot.m
+++ b/crpptbx/gdat_plot.m
@@ -71,9 +71,9 @@ if all(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty(
     ylabel_eff = gdat_data.label;
     if iscell(gdat_data.label) && length(gdat_data.label)>=2; ylabel_eff = gdat_data.label{end}; end
     if ~isempty(gdat_data.units)
-      hylabel=ylabel([ylabel_eff '[' gdat_data.units ']']);
+      hylabel=ylabel([ylabel_eff '[' gdat_data.units ']'],'interpreter','none');
     else
-      hylabel=ylabel(ylabel_eff);
+      hylabel=ylabel(ylabel_eff,'interpreter','none');
     end
     if iscell(gdat_data.label) && length(gdat_data.label)>=2;
       legend(gdat_data.label,'interpreter','none');
-- 
GitLab