Developer’s Guide
Note
A large part of the content/structure of this guide has been copied and adapted from the Pandas developer guide.
- Contributing to SpectroChemPy
- Contributing to the code
- Contributing to specific parts of the code
- Contributing to Documentation
- Plotting Architecture and Lazy Matplotlib Integration
- High-Level Architecture
- Actual Architecture (Simplified)
- Lazy Initialization System
- Step 1: PlotPreferences as Source of Truth
- Step 2: Local rcParams Application
- Step 3: Style Sheets Are Parsed, Not Applied
- Step 4: Two-Stage Value Coercion
- Step 5: Handling Special Matplotlib Semantics
- Step 6: Logical vs File-Based Styles
- Step 7: Adding or Modifying Plot Preferences
- Step 8: Testing and Debugging
- Performance Guidelines for Contributors
- Summary for Contributors