| Module | Source File | Description |
|---|---|---|
| fortplot | fortplot.f90 | Top-level public interface for fortplot - Modern Fortran plotting library |
| fortplot_2d_plots | fortplot_2d_plots.f90 | 2D plot operations module |
| fortplot_3d_axes | fortplot_3d_axes.f90 | 3D axes rendering module for projecting 3D axis frames to 2D |
| fortplot_3d_plots | fortplot_3d_plots.f90 | 3D plot operations module |
| fortplot_animation | fortplot_animation.f90 | |
| fortplot_animation_core | fortplot_animation_core.f90 | |
| fortplot_animation_pipeline | fortplot_animation_pipeline.f90 | |
| fortplot_animation_rendering | fortplot_animation_rendering.f90 | |
| fortplot_animation_validation | fortplot_animation_validation.f90 | |
| fortplot_annotation_coordinates | fortplot_annotation_coordinates.f90 | Coordinate transformation functions for text annotations |
| fortplot_annotation_layout | fortplot_annotation_layout.f90 | Text layout, positioning and typography functions for annotations |
| fortplot_annotation_rendering | fortplot_annotation_rendering.f90 | Annotation rendering dispatch system for fortplot |
| fortplot_annotation_types | fortplot_annotation_types.f90 | Type definitions and basic operations for text annotations |
| fortplot_annotations | fortplot_annotations.f90 | Text annotation system for fortplot (Issue #55) |
| fortplot_ascii | fortplot_ascii.f90 | ASCII terminal plotting backend |
| fortplot_ascii_backend_support | fortplot_ascii_backend_support.f90 | ASCII terminal plotting backend - Backend Support Functions |
| fortplot_ascii_drawing | fortplot_ascii_drawing.f90 | ASCII terminal plotting backend - Basic Drawing Elements |
| fortplot_ascii_elements | fortplot_ascii_elements.f90 | ASCII terminal plotting backend - Drawing Elements (Re-export Module) |
| fortplot_ascii_legend | fortplot_ascii_legend.f90 | ASCII terminal plotting backend - Legend Management |
| fortplot_ascii_primitives | fortplot_ascii_primitives.f90 | ASCII terminal plotting backend - Drawing Primitives |
| fortplot_ascii_rendering | fortplot_ascii_rendering.f90 | ASCII terminal plotting backend - Core Rendering Logic |
| fortplot_ascii_text | fortplot_ascii_text.f90 | ASCII terminal plotting backend - Text and Layout Management |
| fortplot_ascii_utils | fortplot_ascii_utils.f90 | ASCII terminal plotting backend - Utility Functions |
| fortplot_axes | fortplot_axes.f90 | Axes and tick generation module |
| fortplot_bar_rendering | fortplot_bar_rendering.f90 | Bar plot rendering for memory/vector backends |
| fortplot_bitmap | fortplot_bitmap.f90 | |
| fortplot_boxplot_rendering | fortplot_boxplot_rendering.f90 | Box plot rendering for memory backends (shared for raster/PDF via context) |
| fortplot_ci_performance_monitor | fortplot_ci_performance_monitor.f90 | CI Performance Monitoring and Regression Detection |
| fortplot_color_conversions | fortplot_color_conversions.f90 | Color space conversions and colormap functionality |
| fortplot_color_definitions | fortplot_color_definitions.f90 | Color type definitions and constants for matplotlib-compatible color support |
| fortplot_color_parsing | fortplot_color_parsing.f90 | Core color parsing functionality for matplotlib-compatible color syntax |
| fortplot_colormap | fortplot_colormap.f90 | Colormap functionality for contour plots Provides color interpolation for different colormaps like matplotlib |
| fortplot_colors | fortplot_colors.f90 | Color parsing and management for matplotlib-compatible color syntax |
| fortplot_constants | fortplot_constants.f90 | Numerical and physical constants for the fortplot library |
| fortplot_context | fortplot_context.f90 | Abstract base class for plotting backends |
| fortplot_contour_algorithms | fortplot_contour_algorithms.f90 | Contour plotting algorithms module |
| fortplot_contour_level_calculation | fortplot_contour_level_calculation.f90 | Default contour level generation compatible with matplotlib MaxNLocator |
| fortplot_contour_regions | fortplot_contour_regions.f90 | Contour polygon decomposition for extracting filled regions |
| fortplot_contour_rendering | fortplot_contour_rendering.f90 | Contour plot rendering module |
| fortplot_coordinate_validation | fortplot_coordinate_validation.f90 | Input validation for coordinate arrays and edge case handling |
| fortplot_datetime | fortplot_datetime.f90 | Minimal datetime utilities for date/time axes. |
| fortplot_directory_listing | fortplot_directory_listing.f90 | Cross-platform directory listing utilities for documentation tooling |
| fortplot_doc_utils | fortplot_doc_utils.f90 | |
| fortplot_documentation | fortplot_documentation.f90 | Consolidated documentation generation module combining core utilities, processing logic, and output generation |
| fortplot_errorbar_plots | fortplot_errorbar_plots.f90 | Error bar plot operations module |
| fortplot_errorbar_rendering | fortplot_errorbar_rendering.f90 | Errorbar rendering module |
| fortplot_errors | fortplot_errors.f90 | Error handling module for fortplot library Provides centralized error management with status codes and messages |
| fortplot_fast_io | fortplot_fast_io.f90 | Fast I/O operations for Windows CI performance optimization |
| fortplot_figure | fortplot_figure.f90 | Main plotting interface - compatibility wrapper for refactored modules |
| fortplot_figure_accessors | fortplot_figure_accessors.f90 | Accessor functions for figure_t |
| fortplot_figure_animation | fortplot_figure_animation.f90 | Figure animation support functionality Extracted from fortplot_figure_core.f90 for size reduction (SRP compliance) |
| fortplot_figure_aspect | fortplot_figure_aspect.f90 | Helper routines for enforcing axis aspect ratios in figures |
| fortplot_figure_boxplot | fortplot_figure_boxplot.f90 | Box plot implementation module |
| fortplot_figure_colorbar | fortplot_figure_colorbar.f90 | Stateful colorbar rendering (matplotlib-style). |
| fortplot_figure_compatibility | fortplot_figure_compatibility.f90 | Backward compatibility methods for figure_t |
| fortplot_figure_comprehensive_operations | fortplot_figure_comprehensive_operations.f90 | Comprehensive operations interface for fortplot figure core |
| fortplot_figure_core | fortplot_figure_core_main.f90 | CORE TYPE DEFINITION |
| fortplot_figure_core_datetime | fortplot_figure_core_datetime.f90 | |
| fortplot_figure_core_pie | fortplot_figure_core_pie.f90 | |
| fortplot_figure_core_specialized | fortplot_figure_core_specialized.f90 | |
| fortplot_figure_core_ticks | fortplot_figure_core_ticks.f90 | Custom tick label operations for figure_t |
| fortplot_figure_core_wrappers | fortplot_figure_core_wrappers.f90 | |
| fortplot_figure_core_wrappers_backend | fortplot_figure_core_wrappers_backend.f90 | |
| fortplot_figure_core_wrappers_layout | fortplot_figure_core_wrappers_layout.f90 | |
| fortplot_figure_core_wrappers_state | fortplot_figure_core_wrappers_state.f90 | |
| fortplot_figure_core_accessors | fortplot_figure_core_ops.f90 | Property accessor methods extracted from fortplot_figure_core |
| fortplot_figure_core_advanced | fortplot_figure_core_ops.f90 | Advanced plotting operations extracted from fortplot_figure_core |
| fortplot_figure_core_compat | fortplot_figure_core_io_compat.f90 | Figure backward compatibility and animation support module |
| fortplot_figure_core_config | fortplot_figure_core_io_compat.f90 | Figure configuration operations module |
| fortplot_figure_core_io | fortplot_figure_core_io_compat.f90 | Figure I/O and rendering operations module |
| fortplot_figure_core_operations | fortplot_figure_core_ops.f90 | Core operations implementations extracted from fortplot_figure_core |
| fortplot_figure_core_ranges | fortplot_figure_core_ops.f90 | Figure data range management module |
| fortplot_figure_core_utils | fortplot_figure_core_ops.f90 | Utility operations extracted from fortplot_figure_core |
| fortplot_figure_data_ranges | fortplot_figure_data_ranges.f90 | |
| fortplot_figure_grid | fortplot_figure_grid.f90 | Figure grid functionality module |
| fortplot_figure_histogram | fortplot_figure_histogram.f90 | Figure histogram functionality module |
| fortplot_figure_initialization | fortplot_figure_initialization.f90 | Figure initialization and configuration module |
| fortplot_figure_io | fortplot_figure_io.f90 | File I/O operations for figure backends Contains save operations for PNG, PDF, and ASCII formats |
| fortplot_figure_management | fortplot_figure_management.f90 | Figure lifecycle management module for fortplot_figure_core |
| fortplot_figure_operations | fortplot_figure_operations.f90 | Figure core operations module for fortplot_figure_core |
| fortplot_figure_plot_management | fortplot_figure_plot_management.f90 | Figure plot data management module |
| fortplot_figure_plots | fortplot_figure_plots.f90 | Plot creation methods for figure_t |
| fortplot_figure_properties_new | fortplot_figure_properties_new.f90 | Figure property management module for fortplot_figure_core |
| fortplot_figure_quiver | fortplot_figure_quiver.f90 | Quiver plot (discrete vector arrows) functionality module |
| fortplot_figure_ranges | fortplot_figure_ranges.f90 | Figure data range management functionality Extracted from fortplot_figure_core.f90 for size reduction (SRP compliance) |
| fortplot_figure_reflines | fortplot_figure_reflines.f90 | Reference line operations for figures |
| fortplot_figure_render_engine | fortplot_figure_render_engine.f90 | Shared rendering engine for figure outputs. |
| fortplot_figure_rendering_pipeline | fortplot_figure_rendering_pipeline.f90 | Figure rendering pipeline module |
| fortplot_figure_scatter | fortplot_figure_scatter.f90 | Scatter plot implementation module |
| fortplot_figure_streamlines | fortplot_figure_streamlines.f90 | Figure streamline functionality module |
| fortplot_figure_subplots | fortplot_figure_subplots.f90 | Subplot management functionality for figure_t |
| fortplot_figure_utilities | fortplot_figure_utilities.f90 | Utility functions for figure operations |
| fortplot_file_operations | fortplot_file_operations.f90 | File system operations module |
| fortplot_format_parser | fortplot_format_parser.f90 | |
| fortplot_global | fortplot_global.f90 | Global figure instance management for fortplot Provides access to the shared global figure used by pyplot-style functions |
| fortplot_interpolation | fortplot_interpolation.f90 | Shared interpolation utilities for contour plotting |
| fortplot_label_positioning | fortplot_label_positioning.f90 | Separate positioning for tick labels vs axis labels Follows matplotlib exact spacing measurements |
| fortplot_latex_parser | fortplot_latex_parser.f90 | LaTeX command parser for Greek letters and mathematical symbols |
| fortplot_layout | fortplot_layout.f90 | Layout and margin calculations for plotting backends |
| fortplot_legend | fortplot_legend.f90 | Legend module following SOLID principles |
| fortplot_legend_layout | fortplot_legend_layout.f90 | Shared legend layout calculations following DRY principle |
| fortplot_line_rendering | fortplot_line_rendering.f90 | Line plot rendering module |
| fortplot_line_styles | fortplot_line_styles.f90 | Line pattern and style rendering algorithms |
| fortplot_logging | fortplot_logging.f90 | Simple logging facility for fortplot library Allows control over console output verbosity and warning suppression |
| fortplot_margins | fortplot_margins.f90 | Common margin and axis functionality for plotting backends |
| fortplot_marker_rendering | fortplot_marker_rendering.f90 | Marker rendering module |
| fortplot_markers | fortplot_markers.f90 | Shared marker utilities following DRY principles Eliminates code duplication between PNG and PDF backends |
| fortplot_mathtext | fortplot_mathtext.f90 | Mathematical text rendering with superscripts and subscripts Supports matplotlib-like syntax: x^2, y_i, x_{text}, y^{superscript} |
| fortplot_matplotlib | fortplot_matplotlib.f90 | Matplotlib-compatible API wrapper for fortplot Main facade module that re-exports all matplotlib-style functions |
| fortplot_matplotlib_advanced | fortplot_matplotlib_advanced.f90 | Slim matplotlib-compatible facade that aggregates specialised wrappers |
| fortplot_matplotlib_axes | fortplot_matplotlib_axes.f90 | Axes, scale, and labelling helpers for the matplotlib facade |
| fortplot_matplotlib_colorbar | fortplot_matplotlib_colorbar.f90 | Matplotlib-style stateful colorbar wrapper. |
| fortplot_matplotlib_field_wrappers | fortplot_matplotlib_field_wrappers.f90 | Contour, field, and vector visualisation wrappers for matplotlib facade |
| fortplot_matplotlib_plot_wrappers | fortplot_matplotlib_plot_wrappers.f90 | Matplotlib-style plot creation wrappers built on top of fortplot figures |
| fortplot_matplotlib_plots_new | fortplot_matplotlib_plots_new.f90 | New matplotlib-compatible plot functions added for issue #1178 Includes: imshow, pie, polar, step, stem, fill, fill_between, twinx, twiny |
| fortplot_matplotlib_session | fortplot_matplotlib_session.f90 | Global figure session helpers shared across matplotlib-compatible wrappers |
| fortplot_memory_backend | fortplot_memory_backend.f90 | Memory-only backend for Windows CI performance testing |
| fortplot_mesh_rendering | fortplot_mesh_rendering.f90 | Mesh (pcolormesh) rendering module |
| fortplot_os_detection | fortplot_os_detection.f90 | Operating system detection and environment utilities |
| fortplot_parameter_validation | fortplot_parameter_validation.f90 | |
| fortplot_path_operations | fortplot_path_operations.f90 | Path manipulation and normalization utilities |
| fortplot_pcolormesh | fortplot_pcolormesh.f90 | Pcolormesh (pseudocolor mesh) plotting functionality |
| fortplot_pdf | fortplot_pdf.f90 | PDF backend main interface (unified coordinates using plot area) |
| fortplot_pdf_axes | fortplot_pdf_axes.f90 | PDF axes, grid, and tick drawing operations Handles plot frame, axes, tick marks, and grid lines |
| fortplot_pdf_coordinate | fortplot_pdf_coordinate.f90 | PDF coordinate transformation and polymorphic method support Handles coordinate normalization and backend-specific method implementations |
| fortplot_pdf_core | fortplot_pdf_core.f90 | Core PDF types and basic operations Provides fundamental PDF context and stream management |
| fortplot_pdf_drawing | fortplot_pdf_drawing.f90 | PDF-specific drawing utility functions |
| fortplot_pdf_io | fortplot_pdf_io.f90 | PDF file I/O operations Handles PDF document structure, writing, and file management |
| fortplot_pdf_markers | fortplot_pdf_markers.f90 | PDF marker and graphics state operations Handles marker drawing, color management, and graphics state operations |
| fortplot_pdf_mathtext_render | fortplot_pdf_mathtext_render.f90 | PDF mathtext rendering utilities |
| fortplot_pdf_secondary_axes | fortplot_pdf_secondary_axes.f90 | PDF secondary axes rendering for twin axes support Handles drawing of secondary Y-axis (right side) and X-axis (top) |
| fortplot_pdf_text_escape | fortplot_pdf_text_escape.f90 | PDF text escaping and symbol mapping utilities |
| fortplot_pdf_text_metrics | fortplot_pdf_text_metrics.f90 | PDF text measurement helpers |
| fortplot_pdf_text_render | fortplot_pdf_text_render.f90 | High level PDF text drawing routines |
| fortplot_pdf_text_segments | fortplot_pdf_text_segments.f90 | Mixed-font PDF text segmentation helpers |
| fortplot_pie_rendering | fortplot_pie_rendering.f90 | Pie chart rendering helpers for polygon backends |
| fortplot_pipe | fortplot_pipe.f90 | |
| fortplot_plot_annotations | fortplot_plot_annotations.f90 | Plot annotation operations module |
| fortplot_plot_bars | fortplot_plot_bars.f90 | Bar chart plotting functionality |
| fortplot_plot_contours | fortplot_plot_contours.f90 | Contour and pcolormesh plotting functionality |
| fortplot_plot_data | fortplot_plot_data.f90 | Core plot data structures - extracted from fortplot_figure_core |
| fortplot_plot_statistics | fortplot_plot_statistics.f90 | Statistical plotting functionality |
| fortplot_plotting_advanced | fortplot_plotting_advanced.f90 | Advanced plotting methods (contour, bar, histogram, boxplot, streamplot) |
| fortplot_png | fortplot_png.f90 | |
| fortplot_png_encoder | fortplot_png_encoder.f90 | |
| fortplot_png_validation | fortplot_png_validation.f90 | PNG file validation using internal format checks (no shell execution) CRITICAL: Every PNG file MUST be validated after creation |
| fortplot_polar | fortplot_polar.f90 | Polar coordinate transformation and utilities |
| fortplot_polar_rendering | fortplot_polar_rendering.f90 | Polar projection rendering for polygon backends |
| fortplot_projection | fortplot_projection.f90 | 3D to 2D projection module for rendering 3D plots in 2D backends |
| fortplot_raster | fortplot_raster.f90 | Main raster plotting context extracted into specialized modules |
| fortplot_raster_axes | fortplot_raster_axes.f90 | Raster axes coordination module (refactored for size compliance) Orchestrates tick and label rendering through specialized modules |
| fortplot_raster_core | fortplot_raster_core.f90 | Core raster image management and basic operations Extracted from fortplot_raster.f90 for size reduction (SRP compliance) |
| fortplot_raster_drawing | fortplot_raster_drawing.f90 | Main raster drawing module that provides unified interface to drawing subsystems |
| fortplot_raster_labels | fortplot_raster_labels.f90 | Raster axis labels (title, xlabel, ylabel) rendering functionality Extracted from fortplot_raster_axes.f90 for single responsibility principle |
| fortplot_raster_line_styles | fortplot_raster_line_styles.f90 | Module for handling line styling in raster images |
| fortplot_raster_markers | fortplot_raster_markers.f90 | Raster marker drawing functions |
| fortplot_raster_primitives | fortplot_raster_primitives.f90 | Basic raster drawing primitives and utilities |
| fortplot_raster_rendering | fortplot_raster_rendering.f90 | Specialized rendering functionality for raster backend Extracted from fortplot_raster.f90 for size reduction (SRP compliance) |
| fortplot_raster_text_rendering | fortplot_raster_text_rendering.f90 | Raster-specific text rendering primitives (glyph rasterization, mathtext drawing) |
| fortplot_raster_ticks | fortplot_raster_ticks.f90 | Raster tick marks and tick labels rendering functionality Extracted from fortplot_raster_axes.f90 for single responsibility principle |
| fortplot_rendering | fortplot_rendering.f90 | Figure rendering pipeline orchestrator module |
| fortplot_scales | fortplot_scales.f90 | Scale transformation module for coordinate system transformations |
| fortplot_scatter_plots | fortplot_scatter_plots.f90 | Scatter plot operations module |
| fortplot_security | fortplot_security.f90 | |
| fortplot_security_core | fortplot_security_core.f90 | |
| fortplot_spy_backend | fortplot_spy_backend.f90 | |
| fortplot_stb_truetype | fortplot_stb_truetype.f90 | Backend-agnostic text rendering using STB TrueType Provides iso_c_binding interface to stb_truetype.h functions |
| fortplot_streamline | fortplot_streamline.f90 | Abstract interface for velocity functions using double precision Context type to hold velocity function pointers (eliminates trampoline need) Module-level context for current velocity functions (thread-unsafe but trampoline-free) Module-level wrapper functions to eliminate trampolines |
| fortplot_streamline_integrator | fortplot_streamline_integrator.f90 | DOPRI5 (Dormand-Prince 5(4)) integrator for streamline computation Provides adaptive step size control and high-order accuracy |
| fortplot_streamline_placement | fortplot_streamline_placement.f90 | Streamline placement algorithms for matplotlib compatibility |
| fortplot_streamplot_arrow_utils | fortplot_streamplot_arrow_utils.f90 | Shared utilities for streamplot arrow placement |
| fortplot_streamplot_core | fortplot_streamplot_core.f90 | Streamplot implementation broken down for size compliance |
| fortplot_streamplot_matplotlib | fortplot_streamplot_matplotlib.f90 | Matplotlib-inspired streamplot implementation. |
| fortplot_string_utils | fortplot_string_utils.f90 | Core string utilities with minimal dependencies |
| fortplot_subplot_layout | fortplot_subplot_layout.f90 | |
| fortplot_subplot_rendering | fortplot_subplot_rendering.f90 | |
| fortplot_surface_rendering | fortplot_surface_rendering.f90 | Surface rendering module for 3D surface plots |
| fortplot_svg | fortplot_svg.f90 | SVG backend main interface |
| fortplot_system_commands | fortplot_system_commands.f90 | System command operations module |
| fortplot_system_runtime | fortplot_system_runtime.f90 | Runtime OS detection and cross-platform system operations orchestrator |
| fortplot_system_timeout | fortplot_system_timeout.f90 | Timeout-safe system operations for Windows CI reliability SECURITY: All timeout command execution disabled for security compliance |
| fortplot_system_viewer | fortplot_system_viewer.f90 | System viewer launching for show() functionality Handles platform-specific viewer launching and graphical session detection |
| fortplot_test_helpers | fortplot_test_helpers.f90 | Unified secure test utilities module Provides comprehensive test file management with proper cleanup Replaces all previous test helper modules with secure implementation |
| fortplot_testing | fortplot_testing.f90 | Testing utilities module with proper error handling |
| fortplot_text | fortplot_text.f90 | Main text module that provides unified interface to font and rendering subsystems |
| fortplot_text_fonts | fortplot_text_fonts.f90 | |
| fortplot_text_helpers | fortplot_text_helpers.f90 | Small helpers for preparing text for backends |
| fortplot_text_layout | fortplot_text_layout.f90 | Shared text layout utilities (width/height calculations, mathtext helpers) |
| fortplot_text_rendering | fortplot_text_rendering.f90 | Thin facade module that re-exports shared layout utilities and raster hooks |
| fortplot_text_stub | fortplot_text_stub.f90 | Text and annotation functions implementation Provides pyplot-style text() and annotate() functions that integrate with the global figure and annotation system |
| fortplot_tick_calculation | fortplot_tick_calculation.f90 | Core tick calculation algorithms for linear scales |
| fortplot_tick_formatting | fortplot_tick_formatting.f90 | Tick value formatting functions with multiple strategies |
| fortplot_tick_scales | fortplot_tick_scales.f90 | Specialized tick generation for logarithmic and symmetric logarithmic scales |
| fortplot_ticks | fortplot_ticks.f90 | Tick generation and formatting for all scale types |
| fortplot_unicode | fortplot_unicode.f90 | |
| fortplot_utils | fortplot_utils.f90 | Utility functions module for common operations |
| fortplot_utils_sort | fortplot_utils_sort.f90 | Sorting utilities for fortplot |
| fortplot_validation | fortplot_validation.f90 | |
| fortplot_validation_context | fortplot_validation_context.f90 | |
| fortplot_validation_core | fortplot_validation_core.f90 | |
| fortplot_vector | fortplot_vector.f90 | Shared vector graphics functionality for backends like PDF, SVG, etc. Extracted from PDF backend to provide reusable vector drawing primitives |
| fortplot_verification_core | fortplot_verification_core.f90 | Core functionality verification system - main types and verification logic Split from fortplot_functionality_verification.f90 for file size compliance (Issue #884) |
| fortplot_verification_reports | fortplot_verification_reports.f90 | Report generation and CI integration for functionality verification Split from fortplot_functionality_verification.f90 for file size compliance (Issue #884) |
| fortplot_windows_performance | fortplot_windows_performance.f90 | Windows CI Performance Optimization Module |
| fortplot_windows_test_helper | fortplot_windows_test_helper.f90 | Windows-specific test helpers for CI compatibility Issue #300: Windows CI environment compatibility |
| fortplot_zlib_bridge | fortplot_zlib.f90 | Bridge module to re-export from the main fortplot_zlib_core This maintains compatibility while using the working full implementation |
| fortplot_zlib_core | fortplot_zlib_core.f90 | Pure Fortran implementation of zlib compression, decompression, and CRC32 Ported from STB image libraries for self-contained PNG support |
| fortplot_zlib_huffman | fortplot_zlib_huffman.f90 | Huffman encoding and deflate compression functionality Split from fortplot_zlib.f90 for file size compliance (Issue #884) |
| test_pdf_utils | test_pdf_utils.f90 |