code: def test_histfunc_hoverlabels_univariate(histfunc, y):
      def check_label(label, fig):
          assert fig.layout.yaxis.title.text == label
          assert label + "=" in fig.data[0].hovertemplate
  
      df = px.data.tips()
  
      # base case, just "count" (note count(tip) is same as count())
      fig = px.histogram(df, x="total_bill", y=y, histfunc=histfunc)
      check_label("count", fig)
  
      # without y, label is just histnorm
      for histnorm in [
          "probability",
          "percent",
          "density",
          "probability density",
      ]:
          fig = px.histogram(
              df,
              x="total_bill",
              y=y,
              histfunc=histfunc,
              histnorm=histnorm,
          )
          check_label(histnorm, fig)
  
      for histnorm in [
          "probability",
          "percent",
          "density",
          "probability density",
      ]:
          for barnorm in ["percent", "fraction"]:
              fig = px.histogram(
                  df,
                  x="total_bill",
                  y=y,
                  histfunc=histfunc,
                  histnorm=histnorm,
                  barnorm=barnorm,
              )
              check_label(
                  "%s (normalized as %s)" % (histnorm, barnorm), fig
              )
  
file_path: plotly.py/packages/python/plotly/plotly/tests/test_optional/test_px/test_px_functions.py
imports: import plotly.express
  import plotly.graph_objects
  from numpy.testing import assert_array_equal
  import numpy
  import pandas
  import pytest
label_desc: Use image node_id 12 for calling a global function with example usage: test_histfunc_hoverlabels_univariate(histfunc, y) without return types