diff --git a/src/visu/figure_maker.py b/src/visu/figure_maker.py
index d8bfd7c869d3b2b8dff26a5e7e8af264f37f07ff..0eb5e664b0fe9cc43b111570b73a3a622546a2de 100644
--- a/src/visu/figure_maker.py
+++ b/src/visu/figure_maker.py
@@ -7,7 +7,7 @@ Description:
 """
 
 from pathlib import Path
-from typing import List, Union, Any, Tuple
+from typing import List, Union, Any, Tuple, Optional
 from doctest import testmod
 from ..bed_handler.config import TestConfig
 import pandas as pd
@@ -16,6 +16,8 @@ import seaborn as sns
 import matplotlib.pyplot as plt
 from tqdm import tqdm
 from loguru import logger
+import matplotlib as mpl
+import matplotlib.font_manager
 
 
 def load_bed(bed: Path, bed_name: str) -> List[List[Union[int, str]]]:
@@ -292,7 +294,7 @@ def figure_metagene(df_sum: pd.DataFrame, show_replicate: bool,
                     border_names: List[str], nb_bin: int,
                     environment: List[int], bed_name: str,
                     output: Path, norm: Union[int, Path],
-                    condition_col: str) -> None:
+                    condition_col: str, ylim: Optional[List[float]]) -> None:
     """
     Create a metagene figure on the region of interest.
 
@@ -309,8 +311,15 @@ def figure_metagene(df_sum: pd.DataFrame, show_replicate: bool,
     the samples or a file containing the normalisations to apply to \
     each samples
     :param condition_col: The name of the condition columns
+    :param ylim: The range of the y axis
     """
-    sns.set(context='poster', style='white')
+    font_files = matplotlib.font_manager.findSystemFonts(fontpaths=None,
+                                                         fontext='ttf')
+    font_list = matplotlib.font_manager.createFontList(font_files)
+    matplotlib.font_manager.fontManager.ttflist.extend(font_list)
+
+    sns.set(context='poster', style='white', font_scale=1.4)
+    mpl.rcParams['font.family'] = 'Arial'
     if show_replicate:
         g = sns.relplot('bin', 'coverage', hue=condition_col, data=df_sum,
                         kind='line', style='replicate', ci=None,
@@ -332,8 +341,8 @@ def figure_metagene(df_sum: pd.DataFrame, show_replicate: bool,
     tmp_bed_name = bed_name.replace("--", ", ")
     title = f"Average coverage in region '{tmp_bed_name}'"
     if environment[0] != 0:
-        title += f"\nand in their surrounding regions of {environment[0]} nt"
-    g.fig.suptitle(title)
+        title += f" and in their surrounding regions of {environment[0]} nt"
+    g.fig.suptitle(title, fontsize=30)
     tmp_bed_name = bed_name.replace("--", "-")
     outfile_title = f"metagene_{tmp_bed_name}_{nb_bin}bin_" \
                     f"{environment[0]}_nt-around-{environment[1]}-bin"
@@ -342,6 +351,9 @@ def figure_metagene(df_sum: pd.DataFrame, show_replicate: bool,
     elif isinstance(norm, Path):
         outfile_title += f"_file_norm"
     outfile_title += ".pdf"
+    if ylim[0] is not None:
+        g.ax.set_ylim(ylim[0], ylim[1])
+    g.ax.tick_params(left=True, bottom=True)
     g.savefig(output / outfile_title)
     g.fig.clf()
 
@@ -438,7 +450,8 @@ def create_figure(design: Path, bw_folder: Path, region_beds: List[Path],
                   norm: Union[int, Path, None] = None,
                   show_replicate: bool = True, environment: List[int] = (0, 0),
                   border_names: List[str] = ('', ''),
-                  output: Path = Path('.')) -> None:
+                  output: Path = Path('.'),
+                  ylim: List[float] = (None, None)) -> None:
     """
     Create A metagene or a barplot figure from bigwig file on regions defined \
     in the bed file provided with 'region_bed' parameter.
@@ -464,14 +477,14 @@ def create_figure(design: Path, bw_folder: Path, region_beds: List[Path],
     the number of bin used to represent those surrounding regions.
     :param border_names: The name of the borders
     :param output: Folder where the results will be created
+    :param ylim: The range of y-axis
     """
     if len(region_beds) != len(bed_names):
         raise IndexError("Parameter region_beds and bed_names should "
                          "have the same length")
     df_exp = pd.read_csv(design, sep="\t")
     regions = load_beds(region_beds, bed_names)
-    region_bed_name = "-".join([b.name.replace('.bed', '')
-                                for b in region_beds])
+    region_bed_name = "-".join(b.name.replace('.bed', '') for b in region_beds)
     outfile = f'tmp_cov_table_{design.name.replace(".txt", "")}' \
               f'_{region_bed_name}_{nb_bin}bin_' \
               f'{environment[0]}_nt-around-{environment[1]}-bin'
@@ -495,7 +508,8 @@ def create_figure(design: Path, bw_folder: Path, region_beds: List[Path],
                                          ordered_condition, bed_names)
     if figure_type == "metagene":
         figure_metagene(df_sum, show_replicate, border_names, nb_bin,
-                        environment, region_kind, output, norm, cond_col)
+                        environment, region_kind, output, norm, cond_col,
+                        ylim)
     else:
         if 'location' in df_sum.columns:
             for cur_region in df_sum['location'].unique():