<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def histogram2d(data1, data2, bins=10, *args, **kwargs):
 """Facade function to create 2D histograms. For implementation and parameters, see histogramdd. This function is also aliased as "h2". Returns ------- physt.histogram_nd.Histogram2D See Also -------- numpy.histogram2d histogramdd """

    import numpy as np

    # guess axis names
    if "axis_names" not in kwargs:
        if hasattr(data1, "name") and hasattr(data2, "name"):
            kwargs["axis_names"] = [data1.name, data2.name]
    if data1 is not None and data2 is not None:
        data1 = np.asarray(data1)
        data2 = np.asarray(data2)
        data = np.concatenate([data1[:, np.newaxis],
                               data2[:, np.newaxis]], axis=1)
    else:
        data = None
    return histogramdd(data, bins, *args, dim=2, **kwargs)