docs: def draw(self, x, y, xlabel=None, ylabel=None):
          """
          Draw the joint plot for the data in x and y.
  
          Parameters
          ----------
          x, y : 1D array-like
              The data to plot for the x axis and the y axis
  
          xlabel, ylabel : str
              The labels for the x and y axes.
          """
          # This is a little weird to be here, but it is the best place to perform
          # this computation given how fit calls draw and returns.
          self.corr_ = self.correlation_methods[self.correlation](x, y)
  
          # First draw the joint plot
          joint_kws = self.joint_kws or {}
          joint_kws.setdefault("alpha", self.alpha)
          joint_kws.setdefault("label", "{}={:0.3f}".format(self.correlation, self.corr_))
  
          # Draw scatter joint plot
          if self.kind == "scatter":
              self.ax.scatter(x, y, **joint_kws)
  
              # TODO: Draw best fit line (or should this be kind='reg'?)
  
          # Draw hexbin joint plot
          elif self.kind in ('hex', 'hexbin'):
              joint_kws.setdefault("mincnt", 1)
              joint_kws.setdefault("gridsize", 50)
              self.ax.hexbin(x, y, **joint_kws)
  
          # Something bad happened
          else:
              raise ValueError("unknown joint plot kind '{}'".format(self.kind))
  
          # Set the X and Y axis labels on the plot
          self.ax.set_xlabel(xlabel)
          self.ax.set_ylabel(ylabel)
  
          # If we're not going to draw histograms, stop here
          if not self.hist:
              # Ensure the current axes is always the main joint plot axes
              plt.sca(self.ax)
              return self.ax
  
          # Draw the histograms
          hist_kws = self.hist_kws or {}
          hist_kws.setdefault("bins", 50)
          if self.hist == "density":
              hist_kws.setdefault("density", True)
  
          self.xhax.hist(x, **hist_kws)
          self.yhax.hist(y, orientation="horizontal", **hist_kws)
  
          # Ensure the current axes is always the main joint plot axes
          plt.sca(self.ax)
          return self.ax