seaborn.heatmap(data, vmin=None, vmax=None,cmap=None, center=None, robust=False, annot=None , fmt ='.2g', annot_kws=None,linewidths=0, linecolor='white', cbar=True, cbar_kws=None, cbar_ax=None,square=False, xticklabels='auto', yticklabels='auto', mask= None, ax=None,**kwargs)
Daten: Matrixdatensatz Ja, es ist ein Array von Numpy oder es kann ein DataFrame von Pandas sein. Wenn es sich um einen DataFrame handelt, entsprechen die Index-/Spalteninformationen von df den Spalten bzw. Zeilen der Heatmap, d. h. pt.index ist die Zeilenbezeichnung der Heatmap und pt.columns die Spaltenbezeichnung der Heatmap Heatmap
vmax, vmin: jeweils der maximale und minimale Bereich der Farbwerte der Heatmap. Der Standardwert wird basierend auf dem Wert in der Datentabelle
cmap bestimmt: Bei der Zuordnung von Zahlen zum Farbraum ist der Wert der Farbkartenname oder das Farbobjekt im Matplotlib-Paket oder eine Liste, die Farben darstellt; Ändern Sie den Standardwert des Parameters: Stellen Sie ihn entsprechend dem Mittenparameter ein.
Mitte: Wenn es Unterschiede in den Datentabellenwerten gibt, legen Sie den Farbmittenausrichtungswert der Wärmekarte fest, indem Sie den Mittenwert festlegen. Sie können die Gesamttiefe der generierten Bildfarbe anpassen. Wenn es zu einem Datenüberlauf kommt, ändern sich die eingestellten vmax und vmin automatisch
robust: Der Standardwert ist False; Wenn es „Falsch“ ist und die Werte von vmin und vmax nicht festgelegt sind, basiert der Farbzuordnungsbereich der Wärmekarte auf der robusten Quantileinstellung und nicht auf der Extremwerteinstellung
annot (Abkürzung für annotate) : Standardwert: Falsch, wenn es wahr ist, schreiben Sie Daten in jedes Quadrat der Wärmekarte, wenn es sich um eine Matrix handelt. Schreiben Sie die entsprechenden Positionsdaten der Matrix in jedes Quadrat der Wärmekarte
fmt: Zeichenfolgenformat Code, Datenformat zur Identifizierung von Zahlen auf der Matrix, z. B. Beibehaltung mehrerer Nachkommastellen
annot_kws: Der Standardwert ist False; wenn er True ist, legen Sie die Größe, Farbe und Schriftart der Zahlen in der Heatmap-Matrix fest, Matplotlib-Paket Schriftarteneinstellungen unter der Textklasse; >
Linienbreiten: Definieren Sie die Heatmap „Die Lückengröße zwischen „Matrixfeldern, die paarweise Merkmalsbeziehungen darstellen“
Linienfarbe: Die Farbe der Linie, die jedes Matrixfeld auf der Wärmekarte teilt. Der Standardwert ist „Weiß“
cbar: Gibt an, ob ein Farbskalenbalken an der Seite der Wärmekarte gezeichnet werden soll. Der Standardwert ist True.
cbar_kws: Beim Zeichnen von Farbskalenbalken an der Seite der Wärmekarte Seite der Wärmekarte, die relevanten Schriftarteinstellungen, der Standardwert ist Keine
cbar_ax: Beim Zeichnen der Farbskalenbalken auf der Seite der Wärmekarte, die Einstellungen für die Position der Maßstabsbalken, der Standardwert ist Keine
xticklabels, yticklabels:xticklabels steuert die Ausgabe von Labelnamen für jede Spalte; yticklabels steuert die Ausgabe von Labelnamen für jede Zeile. Der Standardwert ist „Auto“. Bei True wird der Spaltenname des DataFrame als Labelname verwendet. Bei „Falsch“ werden keine Zeilenbeschriftungsnamen hinzugefügt. Wenn es sich um eine Liste handelt, wird der Labelname in den in der Liste angegebenen Inhalt geändert. Wenn es sich um eine ganze Zahl K handelt, beschriften Sie alle K-Beschriftungen im Diagramm. Wenn es automatisch ist, wird der Etikettenabstand der Etiketten automatisch ausgewählt und der nicht überlappende Teil (oder alle) der Etikettennamen wird ausgegeben.
Maske: Steuert, ob eine bestimmte Matrix angezeigt wird Block wird angezeigt. Der Standardwert ist „Keine“. Wenn es sich um einen booleschen DataFrame handelt, decken Sie die wahre Position im DataFrame mit Weiß ab.
ax: Legen Sie die Koordinatenachse der Zeichnung fest. Wenn Sie mehrere Untergraphen zeichnen, müssen Sie im Allgemeinen die Koordinaten verschiedener Untergraphen ändern Untergraphen. Werte
**kwargs: Alle anderen Schlüsselwortargumente werden an ax.pcolormesh übergeben
#cmap(颜色) import matplotlib.pyplot as plt % matplotlib inline f, (ax1,ax2) = plt.subplots(figsize = (6,4),nrows=2) # cmap用cubehelix map颜色 cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True) sns.heatmap(pt, linewidths = 0.05, ax = ax1, vmax=900, vmin=0, cmap=cmap) ax1.set_title('cubehelix map') ax1.set_xlabel('') ax1.set_xticklabels([]) #设置x轴图例为空值 ax1.set_ylabel('kind') # cmap用matplotlib colormap sns.heatmap(pt, linewidths = 0.05, ax = ax2, vmax=900, vmin=0, cmap='rainbow') # rainbow为 matplotlib 的colormap名称 ax2.set_title('matplotlib colormap') ax2.set_xlabel('region') ax2.set_ylabel('kind')
#center的用法(颜色)f, (ax1,ax2) = plt.subplots(figsize = (6, 4),nrows=2) cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True) sns.heatmap(pt, linewidths = 0.05, ax = ax1, cmap=cmap, center=None ) ax1.set_title('center=None') ax1.set_xlabel('') ax1.set_xticklabels([]) #设置x轴图例为空值ax1.set_ylabel('kind')# 当center设置小于数据的均值时,生成的图片颜色要向0值代表的颜色一段偏移sns.heatmap(pt, linewidths = 0.05, ax = ax2, cmap=cmap, center=200) ax2.set_title('center=3000') ax2.set_xlabel('region') ax2.set_ylabel('kind')
#robust的用法(颜色)f, (ax1,ax2) = plt.subplots(figsize = (6,4),nrows=2) cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True) sns.heatmap(pt, linewidths = 0.05, ax = ax1, cmap=cmap, center=None, robust=False ) ax1.set_title('robust=False') ax1.set_xlabel('') ax1.set_xticklabels([]) #设置x轴图例为空值ax1.set_ylabel('kind') sns.heatmap(pt, linewidths = 0.05, ax = ax2, cmap=cmap, center=None, robust=True ) ax2.set_title('robust=True') ax2.set_xlabel('region') ax2.set_ylabel('kind')
#annot(矩阵上数字),annot_kws(矩阵上数字的大小颜色字体)matplotlib包text类下的字体设置import numpy as np np.random.seed(20180316) x = np.random.randn(4, 4) f, (ax1, ax2) = plt.subplots(figsize=(6,6),nrows=2) sns.heatmap(x, annot=True, ax=ax1) sns.heatmap(x, annot=True, ax=ax2, annot_kws={'size':9,'weight':'bold', 'color':'blue'})# Keyword arguments for ax.text when annot is True. http://stackoverflow.com/questions/35024475/seaborn-heatmap-key-words
#fmt(字符串格式代码,矩阵上标识数字的数据格式,比如保留小数点后几位数字)import numpy as np np.random.seed(0) x = np.random.randn(4,4) f, (ax1, ax2) = plt.subplots(figsize=(6,6),nrows=2) sns.heatmap(x, annot=True, ax=ax1) sns.heatmap(x, annot=True, fmt='.1f', ax=ax2)
#linewidths(矩阵小块的间隔),linecolor(切分热力图矩阵小块的线的颜色)import matplotlib.pyplot as plt f, ax = plt.subplots(figsize = (6,4)) cmap = sns.cubehelix_palette(start = 1, rot = 3, gamma=0.8, as_cmap = True) sns.heatmap(pt, cmap = cmap, linewidths = 0.05, linecolor= 'red', ax = ax) ax.set_title('Amounts per kind and region') ax.set_xlabel('region') ax.set_ylabel('kind')
#xticklabels,yticklabels横轴和纵轴的标签名输出import matplotlib.pyplot as plt f, (ax1,ax2) = plt.subplots(figsize = (5,5),nrows=2) cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True) p1 = sns.heatmap(pt, ax=ax1, cmap=cmap, center=None, xticklabels=False) ax1.set_title('xticklabels=None',fontsize=8) p2 = sns.heatmap(pt, ax=ax2, cmap=cmap, center=None, xticklabels=2, yticklabels=list(range(5))) ax2.set_title('xticklabels=2, yticklabels is a list',fontsize=8) ax2.set_xlabel('region')
#mask对某些矩阵块的显示进行覆盖 f, (ax1,ax2) = plt.subplots(figsize = (5,5),nrows=2) cmap = sns.cubehelix_palette(start = 1.5, rot = 3, gamma=0.8, as_cmap = True) p1 = sns.heatmap(pt, ax=ax1, cmap=cmap, xticklabels=False, mask=None) ax1.set_title('mask=None') ax1.set_ylabel('kind') p2 = sns.heatmap(pt, ax=ax2, cmap=cmap, xticklabels=True, mask=(pt<800)) #mask对pt进行布尔型转化,结果为True的位置用白色覆盖 ax2.set_title('mask: boolean DataFrame') ax2.set_xlabel('region') ax2.set_ylabel('kind')
f,(ax1,ax2) = plt.subplots(figsize=(4,6),nrows=2) x = np.array([[1,2,3],[2,0,1],[-1,-2,0]]) sns.heatmap(x, annot=True, ax=ax1) sns.heatmap(x, mask=x < 1, ax=ax2, annot=True, annot_kws={"weight": "bold"}) #把小于1的区域覆盖掉
Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine visuelle Heatmap in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!