shap.plots.beeswarm

shap.plots.beeswarm(shap_values: Explanation, max_display: int | None = 10, order=shap.Explanation.abs.mean(0), clustering=None, cluster_threshold=0.5, color=None, axis_color='#333333', alpha: float = 1.0, ax: Axes | None = None, show: bool = True, log_scale: bool = False, color_bar: bool = True, s: float = 16, plot_size: Literal['auto'] | float | tuple[float, float] | None = 'auto', color_bar_label: str = 'Feature value', group_remaining_features: bool = True)

创建一个 SHAP 蜂群图,当提供了特征值时,图会根据特征值着色。

参数:
shap_valuesExplanation

这是一个 Explanation 对象,包含一个 SHAP 值的矩阵(# 样本数 x # 特征数)。

max_displayint

图中包含多少个最重要的特征(默认为 10,对于交互图则为 7)。

ax: matplotlib Axes

用于绘制图形的 Axes 对象,否则使用当前的 Axes。

showbool

在返回之前是否调用 matplotlib.pyplot.show()。将其设置为 False 可以在图创建后对其进行进一步的自定义,通过 matplotlib.pyplot.gca() 返回当前坐标轴。

color_barbool

是否绘制颜色条(图例)。

sfloat

标记点的大小。更多信息,请参阅 matplotlib.pyplot.scatter() 中的 s 参数。

plot_size“auto” (默认), float, (float, float), 或 None

设置图的大小。默认情况下,大小会根据显示的特征数量自动缩放。传递一个浮点数将使每一行的高度为该英寸数。传递一个浮点数对将按该英寸数缩放图。如果传递 None,则当前图形的大小将保持不变。如果 ax 不为 None,则传递 plot_size 将引发 ValueError

group_remaining_features: bool

如果特征数量超过 max_display,则绘制一行来表示所有其余特征的 SHAP 值之和。默认为 True。

返回:
ax: matplotlib Axes

返回绘制了图表的 Axes 对象。仅在 show=False 时返回。

示例

参见 蜂群图示例