graph LR
GuiettaMatplotlib["GuiettaMatplotlib"]
Plotting_Rendering_Handler["Plotting/Rendering Handler"]
Event_Handler["Event Handler"]
Plot_Customization["Plot Customization"]
GuiettaMatplotlib -- "orchestrates and delegates to" --> Plotting_Rendering_Handler
GuiettaMatplotlib -- "orchestrates and integrates" --> Event_Handler
GuiettaMatplotlib -- "orchestrates" --> Plot_Customization
Plot_Customization -- "depends on" --> Plotting_Rendering_Handler
The Matplotlib Integration subsystem is a specialized module within guietta designed to embed and manage Matplotlib plots directly within guietta's GUI applications. It acts as a bridge, enabling guietta to leverage Matplotlib's powerful plotting and rendering capabilities.
This is the central facade and primary entry point for interacting with Matplotlib within guietta. It encapsulates the core Matplotlib Figure and FigureCanvas objects, providing a simplified, guietta-compatible API for plot creation and management. It orchestrates interactions with other components within this subsystem.
Related Classes/Methods:
Responsible for the actual rendering of various plot types (e.g., images, lines, scatter plots) onto the Matplotlib canvas. It dynamically exposes Matplotlib's extensive plotting methods (e.g., plot, imshow) by leveraging GuiettaMatplotlib's __getattr__ mechanism, allowing direct access to underlying Matplotlib axes/figure functionalities without explicit wrapping.
Related Classes/Methods:
Manages user interactions within the embedded Matplotlib plot area. It captures low-level Matplotlib events (e.g., mouse clicks, key presses, scroll events) and translates them into actionable signals or callbacks that can be processed by the guietta application, enabling interactive plot features like zooming, panning, and data selection.
Related Classes/Methods:
Provides functionalities for enhancing and customizing the visual presentation of plots. This includes adding elements like colorbars, setting plot titles, axis labels, legends, and adjusting visual properties. It builds upon the core rendering capabilities provided by the Plotting/Rendering Handler to refine the plot's appearance.
Related Classes/Methods: