Heatmap python тепловая карта

seaborn.heatmap#

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 ) #

Plot rectangular data as a color-encoded matrix.

This is an Axes-level function and will draw the heatmap into the currently-active Axes if none is provided to the ax argument. Part of this Axes space will be taken and used to plot a colormap, unless cbar is False or a separate Axes is provided to cbar_ax .

Parameters : data rectangular dataset

2D dataset that can be coerced into an ndarray. If a Pandas DataFrame is provided, the index/column information will be used to label the columns and rows.

vmin, vmax floats, optional

Values to anchor the colormap, otherwise they are inferred from the data and other keyword arguments.

cmap matplotlib colormap name or object, or list of colors, optional

The mapping from data values to color space. If not provided, the default will depend on whether center is set.

center float, optional

The value at which to center the colormap when plotting divergent data. Using this parameter will change the default cmap if none is specified.

robust bool, optional

If True and vmin or vmax are absent, the colormap range is computed with robust quantiles instead of the extreme values.

annot bool or rectangular dataset, optional

If True, write the data value in each cell. If an array-like with the same shape as data , then use this to annotate the heatmap instead of the data. Note that DataFrames will match on position, not index.

fmt str, optional

String formatting code to use when adding annotations.

annot_kws dict of key, value mappings, optional

Keyword arguments for matplotlib.axes.Axes.text() when annot is True.

linewidths float, optional

Width of the lines that will divide each cell.

linecolor color, optional

Color of the lines that will divide each cell.

cbar bool, optional

Whether to draw a colorbar.

cbar_kws dict of key, value mappings, optional

cbar_ax matplotlib Axes, optional

Axes in which to draw the colorbar, otherwise take space from the main Axes.

square bool, optional

If True, set the Axes aspect to “equal” so each cell will be square-shaped.

xticklabels, yticklabels “auto”, bool, list-like, or int, optional

If True, plot the column names of the dataframe. If False, don’t plot the column names. If list-like, plot these alternate labels as the xticklabels. If an integer, use the column names but plot only every n label. If “auto”, try to densely plot non-overlapping labels.

mask bool array or DataFrame, optional

If passed, data will not be shown in cells where mask is True. Cells with missing values are automatically masked.

ax matplotlib Axes, optional

Axes in which to draw the plot, otherwise use the currently-active Axes.

kwargs other keyword arguments

All other keyword arguments are passed to matplotlib.axes.Axes.pcolormesh() .

Returns : ax matplotlib Axes

Axes object with the heatmap.

Plot a matrix using hierarchical clustering to arrange the rows and columns.

Pass a DataFrame to plot with indices as row/column labels:

glue = sns.load_dataset("glue").pivot("Model", "Task", "Score") sns.heatmap(glue) 
/var/folders/qk/cdrdfhfn5g554pnb30pp4ylr0000gn/T/ipykernel_77613/2862412127.py:1: FutureWarning: In a future version of pandas all arguments of DataFrame.pivot will be keyword-only. glue = sns.load_dataset("glue").pivot("Model", "Task", "Score") 

../_images/heatmap_1_1.png

Use annot to represent the cell values with text:

../_images/heatmap_3_0.png

Control the annotations with a formatting string:

sns.heatmap(glue, annot=True, fmt=".1f") 

../_images/heatmap_5_0.png

Use a separate dataframe for the annotations:

sns.heatmap(glue, annot=glue.rank(axis="columns")) 

../_images/heatmap_7_0.png

sns.heatmap(glue, annot=True, linewidth=.5) 

../_images/heatmap_9_0.png

Select a different colormap by name:

../_images/heatmap_11_0.png

Or pass a colormap object:

sns.heatmap(glue, cmap=sns.cubehelix_palette(as_cmap=True)) 

../_images/heatmap_13_0.png

Set the colormap norm (data values corresponding to minimum and maximum points):

sns.heatmap(glue, vmin=50, vmax=100) 

../_images/heatmap_15_0.png

Use methods on the matplotlib.axes.Axes object to tweak the plot:

ax = sns.heatmap(glue, annot=True) ax.set(xlabel="", ylabel="") ax.xaxis.tick_top() 

Источник

Как легко создавать тепловые карты в Python

Как легко создавать тепловые карты в Python

Предположим, у нас есть следующий набор данных на Python, который отображает количество продаж, совершаемых определенным магазином в каждый будний день в течение пяти недель:

import numpy as np import pandas as pd import seaborn as sns #create a dataset np.random.seed(0) data = df = pd.DataFrame(data,columns=['day','week','sales']) df = df.pivot('day', 'week', 'sales') view first ten rows of dataset df[:10] week 1 2 3 4 5 day Fri 3 36 12 46 13 Mon 44 39 23 1 24 Thur 3 21 24 23 25 Tue 47 9 6 38 17 Wed 0 19 24 39 37 

Создать базовую тепловую карту

Мы можем создать базовую тепловую карту, используя функцию s ns.heatmap() :

Тепловая карта в Python

Цветовая полоса справа отображает легенду о том, какие значения представляют различные цвета.

Добавить линии на тепловую карту

Вы можете добавить линии между квадратами на тепловой карте, используя аргумент ширины линии :

Тепловая карта в Seaborn Python

Добавьте аннотации к тепловой карте

Вы также можете добавить аннотации к тепловой карте, используя аргумент annot=True :

sns.heatmap(df, linewidths=.5, annot=True) 

Аннотированная тепловая карта в Python

Скрыть Colorbar из тепловой карты

Вы также можете полностью скрыть цветовую полосу, используя параметр cbar=False :

sns.heatmap(df, linewidths=.5, annot=True, cbar=False) 

Пример тепловой карты в Python

Изменить цветовую тему тепловой карты

Вы также можете изменить цветовую тему, используя аргумент cmap.Например, вы можете установить цвета в диапазоне от желтого до зеленого и синего:

Тепловая карта питона

Или вы можете иметь диапазон цветов от красного до синего:

Источник

Как сделать тепловые карты с Seaborn (с примерами)

Как сделать тепловые карты с Seaborn (с примерами)

Тепловая карта — это тип диаграммы, в которой для представления значений данных используются разные оттенки цветов.

В этом руководстве объясняется, как создавать тепловые карты с помощью библиотеки визуализации Python Seaborn со следующим набором данных:

#import seaborn import seaborn as sns #load "flights" dataset data = sns.load_dataset("flights") data = data.pivot(" month", " year", " passengers ") #view first five rows of dataset data.head() 

Создайте базовую тепловую карту

Мы можем использовать следующий синтаксис для создания базовой тепловой карты для этого набора данных:

Тепловая карта Seaborn

По оси X отображается год, по оси Y — месяц, а цвет квадратов на тепловой карте представляет количество полетов в этих конкретных комбинациях год-месяц.

Отрегулируйте размер тепловой карты

Мы можем использовать аргумент figsize для настройки общего размера тепловой карты:

#set heatmap size import matplotlib.pyplot as plt plt.figure(figsize = (12,8)) #create heatmap sns.heatmap(data) 

Тепловая карта Seaborn настроить размер

Изменить цвета тепловой карты

Мы можем использовать аргумент cmap , чтобы изменить цвета, используемые в тепловой карте. Например, мы могли бы выбрать цветовую карту «Спектральная»:

sns.heatmap(data, cmap=" Spectral ") 

Тепловая карта Seaborn с аргументом cmap

Или мы могли бы выбрать «холодную» цветовую карту:

sns.heatmap(data, cmap=" coolwarm ") 

Полный список опций cmap доступен здесь .

Аннотировать тепловую карту

Мы можем использовать следующий синтаксис, чтобы аннотировать каждую ячейку в тепловой карте с целочисленным форматированием и указать размер шрифта:

sns.heatmap(data, annot= True , fmt=" d", annot_kws=) 

Тепловая карта Seaborn с аннотациями

Изменить цветовую полосу тепловой карты

Наконец, мы можем отключить цветовую полосу, если хотим использовать аргумент cbar :

sns.heatmap(data, cbar= False ) 

Тепловая карта Seaborn без цветовой полосы

Найдите больше руководств Seaborn на этой странице .

Источник

Читайте также:  Открыть изображение python cv2
Оцените статью