def heatmap(self, x: str, y: str, options: str='', title: str='', label: str='') -> object:
    '\n        Documentation link: http://support.sas.com/documentation/cdl/en/grstatproc/67909/HTML/default/viewer.htm#n0w12m4cn1j5c6n12ak64u1rys4w.htm\n\n        :param x: x variable\n        :param y: y variable\n        :param options: display options (string)\n        :param title: graph title\n        :param label:\n        :return:\n        '
    code = ('proc sgplot data=%s.%s %s;' % (self.libref, self.table, self._dsopts()))
    if len(options):
        code += ("\n\theatmap x='%s'n y='%s'n / %s;" % (x, y, options))
    else:
        code += ("\n\theatmap x='%s'n y='%s'n;" % (x, y))
    if (len(label) > 0):
        code += ((" LegendLABEL='" + label) + "'")
    code += ';\n'
    if (len(title) > 0):
        code += ("\ttitle '%s';\n" % title)
    code += 'run;\ntitle;'
    if self.sas.nosub:
        print(code)
        return
    ll = self._is_valid()
    if (not ll):
        html = self.HTML
        self.HTML = 1
        ll = self.sas._io.submit(code)
        self.HTML = html
    if (not self.sas.batch):
        self.sas.DISPLAY(self.sas.HTML(ll['LST']))
    else:
        return ll
Documentation link: http://support.sas.com/documentation/cdl/en/grstatproc/67909/HTML/default/viewer.htm#n0w12m4cn1j5c6n12ak64u1rys4w.htm

:param x: x variable
:param y: y variable
:param options: display options (string)
:param title: graph title
:param label:
:return:
def heatmap(self, x: str, y: str, options: str=, title: str=, label: str=) -> object:
    '\n        Documentation link: http://support.sas.com/documentation/cdl/en/grstatproc/67909/HTML/default/viewer.htm#n0w12m4cn1j5c6n12ak64u1rys4w.htm\n\n        :param x: x variable\n        :param y: y variable\n        :param options: display options (string)\n        :param title: graph title\n        :param label:\n        :return:\n        '
    code = ('proc sgplot data=%s.%s %s;' % (self.libref, self.table, self._dsopts()))
    if len(options):
        code += ("\n\theatmap x='%s'n y='%s'n / %s;" % (x, y, options))
    else:
        code += ("\n\theatmap x='%s'n y='%s'n;" % (x, y))
    if (len(label) > 0):
        code += ((" LegendLABEL='" + label) + "'")
    code += ';\n'
    if (len(title) > 0):
        code += ("\ttitle '%s';\n" % title)
    code += 'run;\ntitle;'
    if self.sas.nosub:
        print(code)
        return
    ll = self._is_valid()
    if (not ll):
        html = self.HTML
        self.HTML = 1
        ll = self.sas._io.submit(code)
        self.HTML = html
    if (not self.sas.batch):
        self.sas.DISPLAY(self.sas.HTML(ll['LST']))
    else:
        return ll