MAIF / shapash

🔅 Shapash: User-friendly Explainability and Interpretability to Develop Reliable and Transparent Machine Learning Models
https://maif.github.io/shapash/
Apache License 2.0
2.73k stars 334 forks source link

SmartPlotter simplification by delegating each plot type to a separate function file #582

Closed guillaume-vignal closed 4 weeks ago

guillaume-vignal commented 4 weeks ago

Fixes: #581

Description

In this PR, we have initiated the refactoring of the SmartPlotter class by extracting the plotting logic into separate functions, each housed in its own Python file. The goal of this first phase is to keep the core data processing and display strategy logic intact while decoupling the plotting responsibility. This helps in simplifying the class and making the code more modular, maintainable, and testable.

Key Changes:

Benefits:

Next Steps:

This is just the first step in simplifying the SmartPlotter class. Future refactoring efforts could focus on further simplifying the data processing and display strategies, or on improving the interface for selecting and configuring plots.