-----
    Brief
    -----
    Function used to automatically apply the OpenSignals graphical style to Bokeh plots.

    -----------
    Description
    -----------
    OpenSignals has its own graphical style and Bokeh plots function in an object oriented way.

    This function allows to apply the Opensignals graphical style to a set of Bokeh figures objects given as inputs.

    ----------
    Parameters
    ----------
    figure_list : bokeh figure/s
        The base object/s where the graphical functions will be applied.

    grid_plot : bokeh gridplot
        Contains the layout structure, where multiple bokeh figures are represented.

    toolbar : str
        String defining the toolbar position.

def opensignals_style(figure_list, grid_plot=None, toolbar="right"):
    """
    -----
    Brief
    -----
    Function used to automatically apply the OpenSignals graphical style to Bokeh plots.

    -----------
    Description
    -----------
    OpenSignals has its own graphical style and Bokeh plots function in an object oriented way.

    This function allows to apply the Opensignals graphical style to a set of Bokeh figures objects given as inputs.

    ----------
    Parameters
    ----------
    figure_list : bokeh figure/s
        The base object/s where the graphical functions will be applied.

    grid_plot : bokeh gridplot
        Contains the layout structure, where multiple bokeh figures are represented.

    toolbar : str
        String defining the toolbar position.

    """

    for fig in figure_list:
        fig.background_fill_color = (242, 242, 242)

        fig.toolbar.active_scroll = fig.select_one(WheelZoomTool)

        # Removal of unnecessary tools.
        figure_tools = fig.tools
        for tool in range(len(figure_tools) - 1, -1, -1):
            if not isinstance(figure_tools[tool], (type(PanTool()), type(BoxZoomTool()),
                                                   type(WheelZoomTool()), type(ResetTool()))):
                del figure_tools[tool]

        fig.sizing_mode = 'scale_width'
        fig.height = 200
        fig.toolbar.logo = None
        fig.toolbar_location = toolbar

        fig.xgrid.grid_line_color = (150, 150, 150)
        fig.ygrid.grid_line_color = (150, 150, 150)

        fig.xgrid.grid_line_dash = [2, 2]

        fig.xaxis.major_tick_line_color = "white"
        fig.xaxis.minor_tick_line_color = "white"
        fig.xaxis.axis_line_color = "white"
        fig.yaxis.major_tick_in = 0
        fig.yaxis.major_tick_out = 0

        fig.yaxis.major_tick_line_color = "white"
        fig.yaxis.minor_tick_line_color = "white"
        fig.yaxis.minor_tick_in = 0
        fig.yaxis.minor_tick_out = 0
        fig.yaxis.axis_line_color = (150, 150, 150)
        fig.yaxis.axis_line_dash = [2, 2]

        fig.yaxis.major_label_text_color = (88, 88, 88)
        fig.xaxis.major_label_text_color = (88, 88, 88)

        fig.ygrid.grid_line_dash = [2, 2]

    if isinstance(grid_plot, list):
        if grid_plot:
            for g_plot in grid_plot:
                g_plot.sizing_mode = 'scale_width'
                g_plot.height = 600