code: def test_stat_bin_2d(self):
      data = pd.DataFrame({"x": [1, 10, 100, 1000], "y": range(4)})
      p = (
          ggplot(data, aes("x", "y"))
          + stat_bin_2d(bins=3)
          + scale_x_log10()
      )
      assert p == "stat_bin_2d"
  
file_path: plotnine/tests/test_aes.py
imports: import numpy
  import pandas
  from plotnine import aes, after_stat, geom_col, geom_crossbar, geom_point, ggplot, scale_x_log10, scale_y_log10, stage, stat_bin_2d, stat_ecdf, stat_function
  from plotnine.mapping.aes import make_labels
label_desc: Use image node_id 3 for calling the TestTransScale obj's underlying member method code with example usage: obj.test_stat_bin_2d() without return types