Skip to content

Commit

Permalink
InteractionPlot refactor (#3097)
Browse files Browse the repository at this point in the history
Summary:
Pull Request resolved: #3097

When this is landed we will be able to use this plot in Ax 1.0 and Ax UI.

Refactor the interaction plot to be in line with our structure for ax.analysis. This includes a massive reduction in overall code (about half) and a full decoupling from ax.plot.

Adds robustness features around generating subplots -- a failed surface subplot will no longer fail the full analysis.

This new version of the plot is slightly more opinionated in that we always plot both the feature importance bar chart AND the top 6 features, always plots top 15 components in the bar chart, never decomposes components, and always has plots share scale. These settings are most useful and help drastically simplify the code, so I think we should keep them for now and only consider adding them back if there is demand.

Differential Revision: D65234856
  • Loading branch information
mpolson64 authored and facebook-github-bot committed Nov 21, 2024
1 parent 619a12c commit 4e95ad2
Show file tree
Hide file tree
Showing 4 changed files with 308 additions and 678 deletions.
2 changes: 2 additions & 0 deletions ax/analysis/plotly/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
# pyre-strict

from ax.analysis.plotly.cross_validation import CrossValidationPlot
from ax.analysis.plotly.interaction import InteractionPlot
from ax.analysis.plotly.parallel_coordinates import ParallelCoordinatesPlot
from ax.analysis.plotly.plotly_analysis import PlotlyAnalysis, PlotlyAnalysisCard
from ax.analysis.plotly.scatter import ScatterPlot
Expand All @@ -15,6 +16,7 @@
__all__ = [
"ContourPlot",
"CrossValidationPlot",
"InteractionPlot",
"PlotlyAnalysis",
"PlotlyAnalysisCard",
"ParallelCoordinatesPlot",
Expand Down
Loading

0 comments on commit 4e95ad2

Please sign in to comment.