<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def df_to_html(df, percentage_columns=None):
 # pragma: no cover """Return a nicely formatted HTML code string for the given dataframe. Arguments --------- df : pandas.DataFrame A dataframe object. percentage_columns : iterable A list of cloumn names to be displayed with a percentage sign. Returns ------- str A nicely formatted string for the given dataframe. """

    big_dataframe_setup()
    try:
        res = '<br><h2> {} </h2>'.format(df.name)
    except AttributeError:
        res = ''
    df.style.set_properties(**{'text-align': 'center'})
    res += df.to_html(formatters=_formatters_dict(
        input_df=df,
        percentage_columns=percentage_columns
    ))
    res += '<br>'
    return res