code: def params_html_table(params):
      """Return an HTML representation of Parameters.
  
      Parameters
      ----------
      params : Parameters
          Object containing the Parameters of the model.
  
      Returns
      -------
      str
          Multi-line HTML code of fitting parameters.
  
      """
      has_err = any(p.stderr is not None for p in params.values())
      has_expr = any(p.expr is not None for p in params.values())
      has_brute = any(p.brute_step is not None for p in params.values())
  
      html = []
      add = html.append
  
      add('<table class="jp-toc-ignore"><caption>Parameters</caption>')
      headers = ["name", "value"]
      if has_err:
          headers.extend(["standard error", "relative error"])
      headers.extend(["initial value", "min", "max", "vary"])
      if has_expr:
          headers.append("expression")
      if has_brute:
          headers.append("brute step")
  
      hrow = trow(headers, cat="th")
      add(f"<tr>{''.join(hrow)}</tr>")
  
      for par in params.values():
          rows = [par.name, gformat(par.value)]
          if has_err:
              serr = ""
              spercent = ""
              if par.stderr is not None:
                  serr = gformat(par.stderr)
                  try:
                      spercent = f"({abs(par.stderr/par.value):.2%})"
                  except ZeroDivisionError:
                      pass
              rows.extend([serr, spercent])
          rows.extend(
              (
                  par.init_value,
                  gformat(par.min),
                  gformat(par.max),
                  f"{par.vary}",
              )
          )
          if has_expr:
              expr = ""
              if par.expr is not None:
                  expr = par.expr
              rows.append(expr)
          if has_brute:
              brute_step = "None"
              if par.brute_step is not None:
                  brute_step = gformat(par.brute_step)
              rows.append(brute_step)
  
          hrow = trow(rows, cat="td")
          add(f"<tr>{''.join(hrow)}</tr>")
      add("</table>")
      return "".join(html)
  
file_path: lmfit-py/lmfit/printfuncs.py
imports: from math import log10
  import re
  import numpy
label_desc: Use image node_id 10 for calling a global function with example usage: params_html_table(params) and returns: str