You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: figure_boxplot.m
    path of file: ./repos/Making-elegant-Matlab-figures/Boxplot
    
    the code of the file until where you have to start completion: function bh = figure_boxplot(data_input,...
    text_label_in,label_xaxis_data_in,text_title_in,label_orientation_choice_in,...
    box_color_in,box_lineWidth_in,box_widths_value_in,box_color_transparency_in,...
    median_lineWidth_in,median_color_in,...
    whisker_value_in,...
    outlier_marker_in,outlier_markerSize_in,outlier_marker_edgeWidth_in,outlier_marker_edgeColor_in,outlier_jitter_value_in,...
    savefig_in,savefig_name_in,fig_width_cm_in,fig_height_cm_in,...
    ylim_min_in,ylim_max_in)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Adaption of MATLAB boxplot function to plot beautiful publication-quality boxplots easily
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Written by: Ahmed Abdul Quadeer
% E-mail: ahmedaq@gmail.com
% Last change: May 29, 2018
% Copyright (c) Ahmed Abdul Quadeer, 2019
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Inputs:   
%
% - data_input: Input data       
%   * N-length cell including data, with each cell having data of one boxplot 
%     to be compared. G matrix to be used in the default MATLAB "boxplot" 
%     function is generated accordingly.
%   * a matrix of size MxN, where M = no. of observation and N = no. of
%     variables. Boxplot is made for each variable (column) of input matrix
%
% - text_label_in: Labels for x-axis and y-axis
%   Cell of length 2, with first cell having text of x-axis label and 
%   second cell having text of y-axis label
%
% - label_xaxis_data_in: Label for each box plot on the x-axis
%   N-length cell (containing text) or N-length vector numerical data
%
% - text_title_in: Title of the box plot
%   N-length cell (containing text) or N-length vector numerical data
%
% - label_orientation_choice_in: Choice for orientation of boxplot labels
%   * 'horizontal' (default) or
%   * 'inline' (vertical) suitable for long labels
%
% - box_color_in: Color of boxplots
%   Nx3 sized matrix with first row specifying RGB color for the first box
%   plot and so on.
%
% - box_lineWidth_in: Width of boxplots outline
%   Scalar value
%
% - box_widths_value_in: Width of boxplots
%   Scalar value
%
% - box_color_transparency_in: Transparency of box plots
%   Scalar value between 0 (transparent) and 1 (opaque)
%
% - median_lineWidth_in: Width of the line representing the median
%   Scalar value
%
% - median_color_in: Color of the line representing the median
%   3-length row vector specifying the RGB color
%
% - whisker_value_in: Limit of whiskers 
%   Scalar value "a" in the definition of whiskers:a * inter-quartile-range
%
% - outlier_marker_in: Marker to represent outliers
%   e.g. 'o', 'x', '.', or '+'
%
% - outlier_markerSize_in: Size of the marker representing outliers
%   Scalar value
%
% - outlier_marker_edgeWidth_in: Width of the edge (outline) of the marker
%   represeting outliers
%   Scalar value
%
% - outlier_marker_edgeColor_in: Color of the edge (outline) of the marker
%   represeting outliers
%   3-length row vector specifying the RGB color. Black ('k') and white
%   ('w') (default) generally are good options.
%
% - outlier_jitter_value_in: Variance of the random noise added to outliers
%   for visualization purpose
%   Scalar value
%
% - savefig_in: Option to save figure automatically (in png format)
%   * 1 - Yes, save the figure
%   * 0 - No
%
% - savefig_name_in: Name for the figure file
%   Text data
%
% - fig_width_cm_in: Width of the output figure (in cm)
%   Scalar value
%
% - fig_height_cm_in: Height of the output figure (in cm)
%   Scalar value
%
% - ylim_min_in: Lower limit of y-axis 
%   Scalar value
%
% - ylim_max_in: Upper limit of y-axis 
%   Scalar value
%
%
%           
% Output: Box plot figure
% 
%
%% Basic settings 

%%% Font type and size setting %%%

% Using Arial as default because all journals normally require the font to
% be either Arial or Helvetica
set(0,'DefaultAxesFontName','Arial')
set(0,'DefaultTextFontName','Arial')
set(0,'DefaultAxesFontSize',10)
set(0,'DefaultTextFontSize',10)

%%% Color definition %%%

% Using Nature color scheme
% Reason: Because it is really cool!
% Drawback: Only 9 colors
% You can use any other scheme as well, for example check:
% https://ggsci.net/index.html for other journal templates

% color_scheme_npg_hex = ['#E64B35';'#4DBBD5';'#00A087';'#3C5488';....
%     '#F39B7F';'#8491B4';'#91D1C2';'#DC0000';'#7E6148';'#B09C85'];
% color_scheme_npg = hex2rgb(color_scheme_npg_hex);
color_scheme_npg = [...
    0.9020    0.2941    0.2078; ...
    0.3020    0.7333    0.8353; ...
         0    0.6275    0.5294; ...
    0.2353    0.3294    0.5333; ...
    0.9529    0.6078    0.4980; ...
    0.5176    0.5686    0.7059; ...
    0.5686    0.8196    0.7608; ...
    0.8627         0         0; ...
    0.4941    0.3804    0.2824; ...
    0.6902    0.6118    0.5216 ];


    
function bh = figure_boxplot(data_input,...
    text_label_in,label_xaxis_data_in,text_title_in,label_orientation_choice_in,...
    box_color_in,box_lineWidth_in,box_widths_value_in,box_color_transparency_in,...
    median_lineWidth_in,median_color_in,...
    whisker_value_in,...
    outlier_marker_in,outlier_markerSize_in,outlier_marker_edgeWidth_in,outlier_marker_edgeColor_in,outlier_jitter_value_in,...
    savefig_in,savefig_name_in,fig_width_cm_in,fig_height_cm_in,...
    ylim_min_in,ylim_max_in)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Adaption of MATLAB boxplot function to plot beautiful publication-quality boxplots easily
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Written by: Ahmed Abdul Quadeer
% E-mail: ahmedaq@gmail.com
% Last change: May 29, 2018
% Copyright (c) Ahmed Abdul Quadeer, 2019
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Inputs:   
%
% - data_input: Input data       
%   * N-length cell including data, with each cell having data of one boxplot 
%     to be compared. G matrix to be used in the default MATLAB "boxplot" 
%     function is generated accordingly.
%   * a matrix of size MxN, where M = no. of observation and N = no. of
%     variables. Boxplot is made for each variable (column) of input matrix
%
% - text_label_in: Labels for x-axis and y-axis
%   Cell of length 2, with first cell having text of x-axis label and 
%   second cell having text of y-axis label
%
% - label_xaxis_data_in: Label for each box plot on the x-axis
%   N-length cell (containing text) or N-length vector numerical data
%
% - text_title_in: Title of the box plot
%   N-length cell (containing text) or N-length vector numerical data
%
% - label_orientation_choice_in: Choice for orientation of boxplot labels
%   * 'horizontal' (default) or
%   * 'inline' (vertical) suitable for long labels
%
% - box_color_in: Color of boxplots
%   Nx3 sized matrix with first row specifying RGB color for the first box
%   plot and so on.
%
% - box_lineWidth_in: Width of boxplots outline
%   Scalar value
%
% - box_widths_value_in: Width of boxplots
%   Scalar value
%
% - box_color_transparency_in: Transparency of box plots
%   Scalar value between 0 (transparent) and 1 (opaque)
%
% - median_lineWidth_in: Width of the line representing the median
%   Scalar value
%
% - median_color_in: Color of the line representing the median
%   3-length row vector specifying the RGB color
%
% - whisker_value_in: Limit of whiskers 
%   Scalar value "a" in the definition of whiskers:a * inter-quartile-range
%
% - outlier_marker_in: Marker to represent outliers
%   e.g. 'o', 'x', '.', or '+'
%
% - outlier_markerSize_in: Size of the marker representing outliers
%   Scalar value
%
% - outlier_marker_edgeWidth_in: Width of the edge (outline) of the marker
%   represeting outliers
%   Scalar value
%
% - outlier_marker_edgeColor_in: Color of the edge (outline) of the marker
%   represeting outliers
%   3-length row vector specifying the RGB color. Black ('k') and white
%   ('w') (default) generally are good options.
%
% - outlier_jitter_value_in: Variance of the random noise added to outliers
%   for visualization purpose
%   Scalar value
%
% - savefig_in: Option to save figure automatically (in png format)
%   * 1 - Yes, save the figure
%   * 0 - No
%
% - savefig_name_in: Name for the figure file
%   Text data
%
% - fig_width_cm_in: Width of the output figure (in cm)
%   Scalar value
%
% - fig_height_cm_in: Height of the output figure (in cm)
%   Scalar value
%
% - ylim_min_in: Lower limit of y-axis 
%   Scalar value
%
% - ylim_max_in: Upper limit of y-axis 
%   Scalar value
%
%
%           
% Output: Box plot figure
% 
%
%% Basic settings 

%%% Font type and size setting %%%

% Using Arial as default because all journals normally require the font to
% be either Arial or Helvetica
set(0,'DefaultAxesFontName','Arial')
set(0,'DefaultTextFontName','Arial')
set(0,'DefaultAxesFontSize',10)
set(0,'DefaultTextFontSize',10)

%%% Color definition %%%

% Using Nature color scheme
% Reason: Because it is really cool!
% Drawback: Only 9 colors
% You can use any other scheme as well, for example check:
% https://ggsci.net/index.html for other journal templates

% color_scheme_npg_hex = ['#E64B35';'#4DBBD5';'#00A087';'#3C5488';....
%     '#F39B7F';'#8491B4';'#91D1C2';'#DC0000';'#7E6148';'#B09C85'];
% color_scheme_npg = hex2rgb(color_scheme_npg_hex);
color_scheme_npg = [...
    0.9020    0.2941    0.2078; ...
    0.3020    0.7333    0.8353; ...
         0    0.6275    0.5294; ...
    0.2353    0.3294    0.5333; ...
    0.9529    0.6078    0.4980; ...
    0.5176    0.5686    0.7059; ...
    0.5686    0.8196    0.7608; ...
    0.8627         0         0; ...
    0.4941    0.3804    0.2824; ...
    0.6902    0.6118    0.5216 ];

%% Processing with respect to number of input arguments

%Number of boxplots
if iscell(data_input) %if input data is in cell form
    no_boxplots = length(data_input);
else                  %if input data is in matrix form
    no_boxplots = size(data_input,2);
end