如何在Python中增加 seaborn 热图的注释大小?
先决条件:Seaborn
Seaborn 是一个基于 matplotlib 的Python库,用于数据可视化。它提供了一种以统计图形格式呈现数据的媒介,作为传递某些信息的信息丰富且有吸引力的媒介。热图是 seaborn 支持的组件之一,其中使用调色板描绘相关数据的变化。
注释是出现在热图单元格上的文本,代表该单元格所代表的内容。注释遵循默认字体大小,但可以使用 heatmap()函数的 annot_kws 参数进行更改, annot_kws 是字典类型参数,它接受名为 size 的键的值。设置为该键的值定义了注释的大小,但必须满足某些条件才能增加注释的大小:
- heatmap()函数的 annot 参数必须设置为 True。
- annot_kws 参数必须设置为所需的大小。
Syntax: seaborn.heatmap(data, *, vmin=None, vmax=None, cmap=None, center=None, annot_kws=None, linewidths=0, linecolor=’white’, cbar=True, **kwargs)
Important Parameters:
- data: 2D dataset that can be coerced into an ndarray.
- vmin, vmax: Values to anchor the colormap, otherwise they are inferred from the data and other keyword arguments.
- cmap: The mapping from data values to color space.
- center: The value at which to center the colormap when plotting divergent data.
- annot: If True, write the data value in each cell.
- fmt: String formatting code to use when adding annotations.
- linewidths: Width of the lines that will divide each cell.
- linecolor: Color of the lines that will divide each cell.
- cbar: Whether to draw a colorbar.
All the parameters except data are optional.
Returns: An object of type matplotlib.axes._subplots.AxesSubplot
方法
- 导入模块
- 创建或加载数据
- 在 annot 设置为 True 的情况下调用 heatmap()函数。
- 将大小设置为 annot_kws 参数。
- 显示图
下面给出了使用这种方法的实现:
使用的数据集– 畅销书
示例 1:
Python3
# Importing Required Libraries
import pandas as pd
import numpy as np
import seaborn as sb
import matplotlib.pyplot as mtb
data = pd.read_csv("bestsellers.csv")
sb.heatmap(data.corr(), annot=True, annot_kws={'size': 15})
mtb.show()
Python3
# Importing Required Libraries
import pandas as pd
import numpy as np
import seaborn as sb
import matplotlib.pyplot as mtb
data = pd.read_csv("bestsellers.csv")
sb.heatmap(data.corr(), annot=True, annot_kws={'size': 25})
mtb.show()
输出:
对于设置大小,在设置大小值时必须小心。提供非常大的数字会导致注释放大太多,使它们难以阅读、理解,甚至可能相互摔倒,使热图不可读。
其实现如下所示:
示例 2:
蟒蛇3
# Importing Required Libraries
import pandas as pd
import numpy as np
import seaborn as sb
import matplotlib.pyplot as mtb
data = pd.read_csv("bestsellers.csv")
sb.heatmap(data.corr(), annot=True, annot_kws={'size': 25})
mtb.show()
输出: