diff --git a/src/MNH/mode_les_diachro.f90 b/src/MNH/mode_les_diachro.f90
index 88258d0e605cdee92a9a4a3842c096cda1e5ae3b..f2509c9e73b7f014faee07cdadac41337693f3c8 100644
--- a/src/MNH/mode_les_diachro.f90
+++ b/src/MNH/mode_les_diachro.f90
@@ -978,7 +978,6 @@ use mode_write_diachro, only: Write_diachro
 logical, intent(in) :: oavg
 logical, intent(in) :: onorm
 
-character(len=10)                                    :: ygroup  ! Group title
 integer                                              :: iresp   ! Return code
 integer                                              :: ji
 integer                                              :: jk      ! Vertical loop counter
@@ -1018,24 +1017,10 @@ end if
 iresp = 0
 if ( oavg ) call Les_time_avg_4d( zfield, tzdates, iresp )
 
-if ( oavg ) then
-  if ( onorm ) then
-    ygroup = 'H_' // tpfield%cmnhname
-  else
-    ygroup = 'A_' // tpfield%cmnhname
-  end if
-else
-  if ( onorm ) then
-    ygroup = 'E_' // tpfield%cmnhname
-  else
-    ygroup = tpfield%cmnhname
-  end if
-endif
-
 if ( Present( hsuffixes ) ) then
-  ytitle(:) = ygroup // hsuffixes(:)
+  ytitle(:) = tpfield%cmnhname // hsuffixes(:)
 else
-  ytitle(:) = ygroup
+  ytitle(:) = tpfield%cmnhname
 endif
 
 ! Write the profile
@@ -1073,12 +1058,12 @@ if ( iresp == 0 .and. any( zfield /= XUNDEF ) ) then
   tzbudiachro%ccomments(NLVL_SUBCATEGORY) = ''
 
   tzbudiachro%lleveluse(NLVL_GROUP)       = .true.
-  tzbudiachro%clevels  (NLVL_GROUP)       = Trim( ygroup )
+  tzbudiachro%clevels  (NLVL_GROUP)       = Trim( tpfield%cmnhname )
   tzbudiachro%ccomments(NLVL_GROUP)       = ''
 
   tzbudiachro%lleveluse(NLVL_SHAPE)       = .true.
   tzbudiachro%clevels  (NLVL_SHAPE)       = 'Cartesian'
-  tzbudiachro%ccomments(NLVL_SHAPE)       = 'cartesian domain'
+  tzbudiachro%ccomments(NLVL_SHAPE)       = 'Cartesian domain'
 
   tzbudiachro%lleveluse(NLVL_TIMEAVG)     = .true.
   if ( oavg ) then
@@ -1532,14 +1517,10 @@ call Write_diachro( tpdiafile, tzbudiachro, [ tzfield ], tzdates, zwork6 )
 !
 iresp = 0
 call Les_time_avg( zwork6, tzdates, iresp )
-ygroup = 'T_' // ygroup
 do ji = 1, NMNHMAXDIMS
   if ( tzfield%ndimlist(ji) == NMNHDIM_BUDGET_LES_TIME ) tzfield%ndimlist(ji) = NMNHDIM_BUDGET_LES_AVG_TIME
 end do
 
-tzfield%cmnhname  = ygroup
-tzfield%clongname = ygroup
-
 tzbudiachro%lleveluse(NLVL_CATEGORY)    = .true.
 tzbudiachro%clevels  (NLVL_CATEGORY)    = 'LES budgets'
 tzbudiachro%ccomments(NLVL_CATEGORY)    = 'Level for the different LES budgets'
diff --git a/src/MNH/write_diachro.f90 b/src/MNH/write_diachro.f90
index f8ddd23e1d2c8effdce0d740642ed8f4b0e85a73..1bb06996dcad87e8c4b5667deaebbe8e130bfa1b 100644
--- a/src/MNH/write_diachro.f90
+++ b/src/MNH/write_diachro.f90
@@ -265,6 +265,34 @@ if (       Trim( tpbudiachro%clevels(NLVL_CATEGORY) ) == 'Flyers'           &
   ygroup = Trim( ygroup ) // 'Z'
 end if
 
+if (       Trim( tpbudiachro%clevels(NLVL_CATEGORY) ) == 'LES budgets' &
+     .and. Trim( tpbudiachro%clevels(NLVL_SHAPE) )    == 'Cartesian'   ) then
+  if ( tpbudiachro%ltcompress ) then
+    if ( tpbudiachro%lnorm ) then
+      ygroup = 'H_' // Trim( ygroup )
+    else
+      ygroup = 'A_' // Trim( ygroup )
+    end if
+  else
+    if ( tpbudiachro%lnorm ) then
+      ygroup = 'E_' // Trim( ygroup )
+    else
+      !Nothing to do
+    end if
+  end if
+  !Limit to 10 characters (backward compatibility again...)
+  if ( Len_trim( ygroup )  > 10 ) ygroup = ygroup(1:10)
+end if
+
+if (       Trim( tpbudiachro%clevels(NLVL_CATEGORY) ) == 'LES budgets' &
+     .and. Trim( tpbudiachro%clevels(NLVL_SHAPE) )    == 'Spectrum'    ) then
+  if ( tpbudiachro%ltcompress ) then
+    ygroup = 'T_' // Trim( ygroup )
+    !Limit to 10 characters (backward compatibility again...)
+    if ( Len_trim( ygroup )  > 10 ) ygroup = ygroup(1:10)
+  end if
+end if
+
 !Recompute old TYPE for backward compatibility
 if ( ycategory == 'Budgets' ) then
   if ( yshape == 'Cartesian' ) then