Plotting & Visualization
Overview
PyMARS includes comprehensive visualization tools for understanding model behavior, diagnostics, and interpreting results.
Basic Imports
from pymars.plots import (
plot_basis_functions,
plot_predictions,
plot_residuals,
plot_feature_importance,
plot_partial_effects,
plot_anova_decomposition
)
Feature Importance
Visualize which variables matter most:
from pymars.plots import plot_feature_importance
plot_feature_importance(model, figsize=(10, 5))
plt.title('Feature Importances')
plt.show()
Predictions vs Actual
Compare predictions with true values:
from pymars.plots import plot_predictions
plot_predictions(model, X, y, figsize=(12, 5))
plt.suptitle('Model Predictions')
plt.show()
Residual Diagnostics
Assess model assumptions:
from pymars.plots import plot_residuals
plot_residuals(model, X, y, figsize=(15, 10))
plt.suptitle('Residual Diagnostics')
plt.show()
Partial Effects
Univariate slice plots:
from pymars.plots import plot_partial_effects
plot_partial_effects(model, X, features=[0, 1, 2], figsize=(12, 4))
plt.suptitle('Partial Effects Plots')
plt.show()
ANOVA Decomposition
Visualize interaction effects:
from pymars.plots import plot_anova_decomposition
plot_anova_decomposition(model, figsize=(10, 6))
plt.show()
Full API Reference
Visualization tools for MARS models
Functions for plotting basis functions, model predictions, and diagnostics.
- pymars.plots.plot_univariate_effects(model, X: ndarray, feature_idx: int, n_points: int = 100, ax: Axes | None = None) Axes[source]
Plot the effect of a single feature on predictions
- pymars.plots.plot_bivariate_effect(model, X: ndarray, feature1: int, feature2: int, n_points: int = 50, plot_type: str = 'contour', ax: Axes | None = None) Axes[source]
Plot interaction effect between two features
- Parameters:
- Returns:
ax
- Return type:
matplotlib axes
- pymars.plots.plot_basis_functions(model, X: ndarray, max_plot: int = 6, figsize: Tuple[int, int] = (12, 8))[source]
Plot individual basis functions
- pymars.plots.plot_feature_importances(model, feature_names: List[str] | None = None, figsize: Tuple[int, int] = (8, 5)) Figure[source]
Bar plot of feature importances