It appears that the xgb.ggplot.shap.summary function uses the default xgb.importance function to derive the sequence of SHAP objects on a summary plot. However, SHAP values do not necessarily match a feature’s gain, which I believe is what xgb.importance uses (here is a link to an article by Scott Lundberg explaining the difference). As a result, I get a summary SHAP plot that looks like this:
Instead of this:
Does anyone know if there is a way to use the SHAP values to drive the xgb.ggplot.shap.summary importance, or if XGBoost will be updated to sequence SHAP summary plots based on SHAP values, instead of feature gain (or perhaps include a parameter to choose one over the other)?