From 361f566ddf7a732a5a9d083b29e491060f9d8cb3 Mon Sep 17 00:00:00 2001 From: adrinjalali Date: Tue, 4 Jun 2024 16:33:52 +0200 Subject: [PATCH] fix matplotlib deprecation --- skops/card/_model_card.py | 5 +++-- skops/utils/_fixes.py | 6 ++++++ 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 skops/utils/_fixes.py diff --git a/skops/card/_model_card.py b/skops/card/_model_card.py index 02cd8000..558ccc8b 100644 --- a/skops/card/_model_card.py +++ b/skops/card/_model_card.py @@ -22,6 +22,7 @@ from skops.card._templates import CONTENT_PLACEHOLDER, SKOPS_TEMPLATE, Templates from skops.io import load from skops.utils.importutils import import_or_raise +from skops.utils._fixes import boxplot if sys.version_info >= (3, 11): from typing import Self @@ -1225,9 +1226,9 @@ def add_permutation_importances( ) sorted_importances_idx = permutation_importances.importances_mean.argsort() _, ax = plt.subplots() - ax.boxplot( + boxplot(ax, x=permutation_importances.importances[sorted_importances_idx].T, - labels=columns[sorted_importances_idx], + tick_labels=columns[sorted_importances_idx], vert=False, ) ax.set_title(plot_name) diff --git a/skops/utils/_fixes.py b/skops/utils/_fixes.py new file mode 100644 index 00000000..f0cd4838 --- /dev/null +++ b/skops/utils/_fixes.py @@ -0,0 +1,6 @@ +def boxplot(ax,*, tick_labels, **kwargs): + """A function to handle labels->tick_labels deprecation.""" + try: + return ax.boxplot(tick_labels=tick_labels, **kwargs) + except TypeError: + return ax.boxplot(labels=tick_labels, **kwargs) \ No newline at end of file