Modules

ModuleSource FileDescription
fortplot fortplot.f90

Top-level public interface for fortplot - Modern Fortran plotting library

Read more…
fortplot_2d_plots fortplot_2d_plots.f90

2D plot operations module

Read more…
fortplot_3d_axes fortplot_3d_axes.f90

3D axes rendering module for projecting 3D axis frames to 2D

Read more…
fortplot_3d_plots fortplot_3d_plots.f90

3D plot operations module

Read more…
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

Read more…
fortplot_annotation_layout fortplot_annotation_layout.f90

Text layout, positioning and typography functions for annotations

Read more…
fortplot_annotation_rendering fortplot_annotation_rendering.f90

Annotation rendering dispatch system for fortplot

Read more…
fortplot_annotation_types fortplot_annotation_types.f90

Type definitions and basic operations for text annotations

Read more…
fortplot_annotations fortplot_annotations.f90

Text annotation system for fortplot (Issue #55)

Read more…
fortplot_ascii fortplot_ascii.f90

ASCII terminal plotting backend

fortplot_ascii_backend_ops fortplot_ascii_backend_ops.f90

ASCII terminal plotting backend - Backend Operations

Read more…
fortplot_ascii_backend_support fortplot_ascii_backend_support.f90

ASCII terminal plotting backend - Backend Support Functions

Read more…
fortplot_ascii_drawing fortplot_ascii_drawing.f90

ASCII terminal plotting backend - Basic Drawing Elements

Read more…
fortplot_ascii_elements fortplot_ascii_elements.f90

ASCII terminal plotting backend - Drawing Elements (Re-export Module)

Read more…
fortplot_ascii_legend fortplot_ascii_legend.f90

ASCII terminal plotting backend - Legend Management

Read more…
   fortplot_ascii_legend_decode fortplot_ascii_legend_decode.f90

ASCII legend line decoding and render implementation

Read more…
   fortplot_ascii_legend_helpers fortplot_ascii_legend_helpers.f90

ASCII legend helper functions

Read more…
   fortplot_ascii_legend_pie fortplot_ascii_legend_pie.f90

Pie chart autopct queue management

Read more…
   fortplot_ascii_legend_render fortplot_ascii_legend_render.f90

ASCII legend rendering and dimension/position calculations

Read more…
fortplot_ascii_mathtext fortplot_ascii_mathtext.f90

ASCII mathtext and Unicode fallback utilities.

Read more…
fortplot_ascii_player fortplot_ascii_player.f90

Plays back ASCII animations produced by save_animation(*.txt).

Read more…
fortplot_ascii_primitives fortplot_ascii_primitives.f90

ASCII terminal plotting backend - Drawing Primitives

Read more…
fortplot_ascii_rendering fortplot_ascii_rendering.f90

ASCII terminal plotting backend - Core Rendering Logic

Read more…
fortplot_ascii_secondary_axes fortplot_ascii_secondary_axes.f90

ASCII backend secondary axis rendering

Read more…
fortplot_ascii_text fortplot_ascii_text.f90

ASCII terminal plotting backend - Text and Layout Management

Read more…
fortplot_ascii_text_elements fortplot_ascii_text_elements.f90

ASCII terminal plotting backend - Text Element Management

Read more…
fortplot_ascii_utils fortplot_ascii_utils.f90

ASCII terminal plotting backend - Utility Functions

Read more…
fortplot_axes fortplot_axes.f90

Axes and tick generation module

Read more…
fortplot_axes_date fortplot_axes_date.f90

Date axis handling module

Read more…
fortplot_bar_rendering fortplot_bar_rendering.f90

Bar plot rendering for memory/vector backends

Read more…
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_color_conversions fortplot_color_conversions.f90

Color space conversions and colormap functionality

Read more…
fortplot_color_definitions fortplot_color_definitions.f90

Color type definitions and constants for matplotlib-compatible color support

Read more…
fortplot_color_parsing fortplot_color_parsing.f90

Core color parsing functionality for matplotlib-compatible color syntax

Read more…
fortplot_colormap fortplot_colormap.f90

Colormap functionality for contour plots Provides color interpolation for different colormaps like matplotlib

Read more…
fortplot_colors fortplot_colors.f90

Color parsing and management for matplotlib-compatible color syntax

Read more…
fortplot_constants fortplot_constants.f90

Numerical and physical constants for the fortplot library

Read more…
fortplot_context fortplot_context.f90

Abstract base class for plotting backends

Read more…
fortplot_contour_algorithms fortplot_contour_algorithms.f90

Contour plotting algorithms module

Read more…
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

Read more…
fortplot_contour_rendering fortplot_contour_rendering.f90

Contour plot rendering module

Read more…
fortplot_contour_tracing fortplot_contour_tracing.f90

Contour tracing and segment chaining module

Read more…
fortplot_coordinate_validation fortplot_coordinate_validation.f90

Input validation for coordinate arrays and edge case handling

Read more…
fortplot_datetime fortplot_datetime.f90

Minimal datetime utilities for date/time axes.

Read more…
fortplot_directory_listing fortplot_directory_listing.f90
fortplot_doc_constants fortplot_doc_constants.f90

Constants for documentation generation.

Read more…
fortplot_doc_output fortplot_doc_output.f90

Output generation for documentation markdown files.

Read more…
fortplot_doc_processing fortplot_doc_processing.f90

Example processing logic for documentation generation.

Read more…
fortplot_doc_utils fortplot_doc_utils.f90
fortplot_documentation fortplot_documentation.f90

Consolidated documentation generation facade.

Read more…
fortplot_errorbar_plots fortplot_errorbar_plots.f90

Error bar plot operations module

Read more…
fortplot_errorbar_rendering fortplot_errorbar_rendering.f90

Errorbar rendering module

Read more…
fortplot_errors fortplot_errors.f90

Error handling module for fortplot library Provides centralized error management with status codes and messages

fortplot_figure fortplot_figure.f90

Main plotting interface - compatibility wrapper for refactored modules

Read more…
fortplot_figure_accessors fortplot_figure_accessors.f90

Accessor functions for figure_t

Read more…
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

Read more…
fortplot_figure_colorbar fortplot_figure_colorbar.f90

Stateful colorbar rendering (matplotlib-style).

Read more…
fortplot_figure_configuration fortplot_figure_configuration.f90

Figure configuration module

Read more…
fortplot_figure_core fortplot_figure_core_main.f90

Fortran requires all procedure :: and generic :: type-bound procedure interfaces to be declared in the same module as the type definition. The ~175 lines of type definition + ~642 lines of explicit interface blocks cannot be split without a major architectural refactor (submodule interface modules or facade pattern). Implementations are already split across the submodules listed in the imports above. See issue #1925.

Read more…
   fortplot_figure_core_datetime fortplot_figure_core_datetime.f90
   fortplot_figure_core_fill_between fortplot_figure_core_fill_between.f90
   fortplot_figure_core_impl_layout fortplot_figure_core_impl_layout.f90

Layout and axis operations implementations

Read more…
   fortplot_figure_core_impl_state fortplot_figure_core_impl_state.f90

State management and configuration implementations

Read more…
   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

Read more…
   fortplot_figure_core_impl_plots fortplot_figure_core_impl_plots.f90

Plot operations implementations

Read more…
fortplot_figure_core_accessors fortplot_figure_core_accessors.f90

Property accessor methods extracted from fortplot_figure_core

Read more…
fortplot_figure_core_advanced fortplot_figure_core_advanced.f90

Advanced plotting operations extracted from fortplot_figure_core

Read more…
fortplot_figure_core_config fortplot_figure_core_config.f90

Figure configuration operations module

Read more…
fortplot_figure_core_io fortplot_figure_core_io.f90

Figure I/O and rendering operations module

Read more…
fortplot_figure_core_io_figure fortplot_figure_core_io_figure.f90

Figure-suffixed public API module

Read more…
fortplot_figure_core_operations fortplot_figure_core_operations.f90

Core operations implementations extracted from fortplot_figure_core

Read more…
fortplot_figure_core_ranges fortplot_figure_core_ranges.f90

Figure data range management module

Read more…
fortplot_figure_core_utils fortplot_figure_core_utils.f90

Utility operations extracted from fortplot_figure_core

Read more…
fortplot_figure_data_ranges fortplot_figure_data_ranges.f90
fortplot_figure_data_ranges_specialized fortplot_figure_data_ranges_specialized.f90

Specialized plot-type range processors Extracted from fortplot_figure_data_ranges for size compliance (refs #1694)

fortplot_figure_grid fortplot_figure_grid.f90

Figure grid functionality module

Read more…
fortplot_figure_grid_plot_registration fortplot_figure_grid_plot_registration.f90

Grid-based plot data registration (contour, surface, pcolormesh) Extracted from fortplot_figure_plot_management for size compliance (refs #1694)

fortplot_figure_histogram fortplot_figure_histogram.f90

Figure histogram functionality module

Read more…
fortplot_figure_initialization fortplot_figure_initialization.f90

Figure initialization module

Read more…
fortplot_figure_io fortplot_figure_io.f90

File I/O operations for figure backends Contains save operations for PNG, PDF, SVG, and ASCII formats

fortplot_figure_legend_setup fortplot_figure_legend_setup.f90

Figure legend setup module Extracted from fortplot_figure_plot_management for size compliance (refs #1694)

fortplot_figure_management fortplot_figure_management.f90

Figure lifecycle management module for fortplot_figure_core

Read more…
fortplot_figure_operations fortplot_figure_operations.f90

Figure core operations module for fortplot_figure_core

Read more…
fortplot_figure_pie fortplot_figure_pie.f90

Pie chart creation functionality for figure_t

Read more…
fortplot_figure_plot_dispatch fortplot_figure_plot_dispatch.f90

Plot rendering dispatch module

Read more…
fortplot_figure_plot_management fortplot_figure_plot_management.f90

Figure plot data management module

Read more…
fortplot_figure_plot_renderers fortplot_figure_plot_renderers.f90

Individual plot type rendering procedures

Read more…
fortplot_figure_plots fortplot_figure_plots.f90

Plot creation methods for figure_t

Read more…
fortplot_figure_properties fortplot_figure_properties.f90

Figure property management module for fortplot_figure_core

Read more…
fortplot_figure_quiver fortplot_figure_quiver.f90

Quiver plot (discrete vector arrows) functionality module

Read more…
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

Read more…
fortplot_figure_render_engine fortplot_figure_render_engine.f90

Shared rendering engine for figure outputs.

Read more…
fortplot_figure_render_steps fortplot_figure_render_steps.f90

Rendering step procedures extracted from fortplot_figure_render_engine for size compliance (refs #1694)

fortplot_figure_rendering_pipeline fortplot_figure_rendering_pipeline.f90

Figure rendering pipeline module

Read more…
fortplot_figure_scatter fortplot_figure_scatter.f90

Scatter plot implementation module

Read more…
fortplot_figure_streamlines fortplot_figure_streamlines.f90

Figure streamline functionality module

Read more…
fortplot_figure_subplots fortplot_figure_subplots.f90

Subplot management functionality for figure_t

Read more…
fortplot_figure_utilities fortplot_figure_utilities.f90

Utility functions for figure operations

Read more…
fortplot_file_operations fortplot_file_operations.f90
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

Read more…
fortplot_imagemagick fortplot_imagemagick.f90
fortplot_interpolation fortplot_interpolation.f90

Shared interpolation utilities for contour plotting

Read more…
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

Read more…
fortplot_legend fortplot_legend.f90

Legend module following SOLID principles

Read more…
fortplot_legend_drawing fortplot_legend_drawing.f90

Legend drawing and rendering procedures

Read more…
fortplot_legend_layout fortplot_legend_layout.f90

Shared legend layout calculations following DRY principle

Read more…
fortplot_legend_state fortplot_legend_state.f90

Legend state and factory functions

Read more…
fortplot_line_rendering fortplot_line_rendering.f90

Line plot rendering module

Read more…
fortplot_line_styles fortplot_line_styles.f90

Line pattern and style rendering algorithms

Read more…
fortplot_logging fortplot_logging.f90

Simple logging facility for fortplot library Allows control over console output verbosity and warning suppression

Read more…
fortplot_margins fortplot_margins.f90

Common margin and axis functionality for plotting backends

Read more…
fortplot_marker_rendering fortplot_marker_rendering.f90

Marker rendering module

Read more…
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

Read more…
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_color_utils fortplot_matplotlib_color_utils.f90

Shared helpers for resolving matplotlib-style color kwargs.

Read more…
fortplot_matplotlib_colorbar fortplot_matplotlib_colorbar.f90

Matplotlib-style stateful colorbar wrapper.

fortplot_matplotlib_errorbar fortplot_matplotlib_errorbar.f90

Errorbar plot wrappers (matplotlib-compatible).

Read more…
fortplot_matplotlib_field_wrappers fortplot_matplotlib_field_wrappers.f90

Contour visualisation wrappers for matplotlib facade

fortplot_matplotlib_hist_wrappers fortplot_matplotlib_hist_wrappers.f90

Matplotlib-style hist/histogram wrappers split out from fortplot_matplotlib_plot_wrappers to keep each source file under the 1000-line hard limit.

fortplot_matplotlib_mesh_wrappers fortplot_matplotlib_mesh_wrappers.f90

Pcolormesh and surface 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.

Read more…
fortplot_matplotlib_plots fortplot_matplotlib_plots.f90

Matplotlib-compatible plot functions for imshow/pie/polar/step/stem/fill.

Read more…
fortplot_matplotlib_scatter fortplot_matplotlib_scatter.f90

Scatter plot wrappers (matplotlib-compatible).

Read more…
fortplot_matplotlib_scatter_dispatch fortplot_matplotlib_scatter_dispatch.f90

Internal dispatch layer for matplotlib-compatible scatter plots.

Read more…
fortplot_matplotlib_scatter_utils fortplot_matplotlib_scatter_utils.f90

Utility functions for matplotlib-compatible scatter plots.

Read more…
fortplot_matplotlib_session fortplot_matplotlib_session.f90

Global figure session helpers shared across matplotlib-compatible wrappers

Read more…
fortplot_matplotlib_vector_wrappers fortplot_matplotlib_vector_wrappers.f90

Streamplot and quiver visualisation wrappers for matplotlib facade

fortplot_mesh_rendering fortplot_mesh_rendering.f90

Mesh (pcolormesh) rendering module

Read more…
fortplot_os_detection fortplot_os_detection.f90

Operating system detection and lightweight environment helpers.

fortplot_parameter_validation fortplot_parameter_validation.f90
fortplot_path_operations fortplot_path_operations.f90

Path manipulation and normalization utilities

Read more…
fortplot_pcolormesh fortplot_pcolormesh.f90

Pcolormesh (pseudocolor mesh) plotting functionality

Read more…
fortplot_pdf fortplot_pdf.f90

PDF backend main interface (unified coordinates using plot area)

   fortplot_pdf_axes_io fortplot_pdf_axes_io.f90

PDF axes rendering, data extraction, and file I/O

Read more…
   fortplot_pdf_canvas fortplot_pdf_canvas.f90

PDF canvas creation and coordinate management

Read more…
   fortplot_pdf_draw fortplot_pdf_draw.f90

PDF drawing, text rendering, fill operations, and markers

Read more…
fortplot_pdf_axes fortplot_pdf_axes.f90

PDF axes, grid, tick drawing, and plot frame operations

Read more…
fortplot_pdf_axes_drawing fortplot_pdf_axes_drawing.f90

PDF axis drawing module

Read more…
fortplot_pdf_axes_text fortplot_pdf_axes_text.f90

PDF axis text rendering module

Read more…
fortplot_pdf_axes_tick_data fortplot_pdf_axes_tick_data.f90

PDF axis tick data generation module

Read more…
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

Read more…
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_objects fortplot_pdf_objects.f90

PDF object writers for document structure elements

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_stream fortplot_pdf_stream.f90

Low-level PDF stream writing utilities

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

Read more…
fortplot_plot_bars fortplot_plot_bars.f90

Bar chart plotting functionality

Read more…
fortplot_plot_contours fortplot_plot_contours.f90

Contour and pcolormesh plotting functionality

Read more…
fortplot_plot_data fortplot_plot_data.f90

Core plot data structures - extracted from fortplot_figure_core

Read more…
fortplot_plot_statistics fortplot_plot_statistics.f90

Statistical plotting functionality

Read more…
fortplot_plotting_advanced fortplot_plotting_advanced.f90

Advanced plotting methods (contour, bar, histogram, boxplot, streamplot)

Read more…
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.

fortplot_polar fortplot_polar.f90

Polar coordinate transformation and utilities

Read more…
fortplot_polar_rendering fortplot_polar_rendering.f90

Polar projection rendering for polygon backends

Read more…
fortplot_polar_rendering_helpers fortplot_polar_rendering_helpers.f90

Polar rendering helper procedures

Read more…
fortplot_projection fortplot_projection.f90

3D to 2D projection module for rendering 3D plots in 2D backends

Read more…
fortplot_raster fortplot_raster.f90

Main raster plotting context - type definition and constructor only. All bound method implementations are in submodules: fortplot_raster_impl - drawing methods (line, arrow, marker, quad) fortplot_raster_text_impl - text rendering methods (text, bbox, rotated)

Read more…
   fortplot_raster_context_impl fortplot_raster_context_impl.f90

Context wrapper implementations for raster_context. Contains: save_dummy, fill_quad, fill_heatmap, legend, rgb/png, 3d, ylabel, axes, axes_lines, axis_labels, coordinates, render_axes.

Read more…
   fortplot_raster_impl fortplot_raster_impl.f90

Implementation of drawing primitives for raster_context. Contains: line, color, line_width, line_style, marker, arrow.

Read more…
   fortplot_raster_text_impl fortplot_raster_text_impl.f90

Implementation of text rendering methods for raster_context. Contains: text, text_styled, text_with_bbox, rotated_text_with_bbox.

Read more…
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_axes_custom fortplot_raster_axes_custom.f90

Custom tick label and axis label wrapper procedures for raster backend Extracted from fortplot_raster_axes to maintain file size compliance

fortplot_raster_axes_secondary fortplot_raster_axes_secondary.f90

Secondary axis and helper functions for raster backend Extracted from fortplot_raster_axes for size compliance (refs #1694)

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

Read more…
fortplot_raster_primitives fortplot_raster_primitives.f90

Basic raster drawing primitives and utilities

Read more…
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 (primary axes) Extracted from fortplot_raster_axes.f90 for single responsibility principle

fortplot_raster_ticks_secondary fortplot_raster_ticks_secondary.f90

Secondary axis ticks (right/top) and minor ticks for raster backend Extracted from fortplot_raster_ticks for size compliance (refs #1694)

fortplot_rendering fortplot_rendering.f90

Figure rendering pipeline orchestrator module

Read more…
fortplot_scales fortplot_scales.f90

Scale transformation module for coordinate system transformations

Read more…
fortplot_scatter_plots fortplot_scatter_plots.f90

Scatter plot operations module

Read more…
fortplot_spec_builder fortplot_spec_builder.f90

Builder API for constructing spec_t from data arrays.

fortplot_spec_config_apply fortplot_spec_config_apply.f90

Applies config_t values to figure_state_t for rendering.

fortplot_spec_config_axes fortplot_spec_config_axes.f90

Parse Vega-Lite config axis, view, and mark defaults sub-objects.

fortplot_spec_config_defaults fortplot_spec_config_defaults.f90

Built-in style presets for MPL and Vega-Lite rendering modes.

fortplot_spec_config_json fortplot_spec_config_json.f90

JSON serialization for config_t and padding_t.

fortplot_spec_config_parse fortplot_spec_config_parse.f90

JSON parser for the Vega-Lite config block and related top-level properties (padding, autosize).

fortplot_spec_config_styling fortplot_spec_config_styling.f90

Parse Vega-Lite config title, legend, range (color palette), and color-array helpers.

fortplot_spec_config_types fortplot_spec_config_types.f90

Vega-Lite config types for style theming.

Read more…
fortplot_spec_field_rendering fortplot_spec_field_rendering.f90

Field plot rendering (contour, contour_filled, pcolormesh, streamplot).

Read more…
fortplot_spec_frontend_adapters fortplot_spec_frontend_adapters.f90

Convert figure_t into a proper spec_t with marks, encodings, data columns, and config -- no scene_t wrapper.

fortplot_spec_json fortplot_spec_json.f90

JSON serialization for spec_t -> Vega-Lite JSON Produces valid Vega-Lite v5 JSON from Fortran spec_t types. Row-oriented output: data.values is an array of objects.

fortplot_spec_json_channels fortplot_spec_json_channels.f90

JSON channel, scale, domain, and axis parsing.

Read more…
fortplot_spec_json_data fortplot_spec_json_data.f90

JSON data parsing: values arrays, row parsing, field scanning.

Read more…
fortplot_spec_json_field_plot fortplot_spec_json_field_plot.f90

JSON serialization helpers for field_plot_t

fortplot_spec_json_parse fortplot_spec_json_parse.f90

JSON deserializer: Vega-Lite JSON string -> spec_t

Read more…
fortplot_spec_json_reader fortplot_spec_json_reader.f90

Low-level JSON token readers and I/O utilities.

Read more…
fortplot_spec_mark_handlers fortplot_spec_mark_handlers.f90

Mark-type handlers for spec_t rendering.

Read more…
fortplot_spec_rendering fortplot_spec_rendering.f90

Native render path for spec_t values.

Read more…
fortplot_spec_rendering_utils fortplot_spec_rendering_utils.f90

Shared utilities for spec rendering modules.

Read more…
fortplot_spec_types fortplot_spec_types.f90

Vega-Lite-shaped specification types for fortplot

Read more…
fortplot_spy_backend fortplot_spy_backend.f90
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

Read more…
fortplot_streamline_placement fortplot_streamline_placement.f90

Streamline placement algorithms for matplotlib compatibility

Read more…
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

Read more…
fortplot_streamplot_matplotlib fortplot_streamplot_matplotlib.f90

Matplotlib-inspired streamplot implementation.

Read more…
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

Read more…
fortplot_svg fortplot_svg.f90

SVG backend main interface

Read more…
fortplot_svg_axes fortplot_svg_axes.f90

Standalone SVG axes and label rendering

fortplot_svg_draw fortplot_svg_draw.f90

Standalone SVG drawing primitives: line, arrow, quad, heatmap, file I/O

fortplot_svg_legend fortplot_svg_legend.f90

Standalone SVG legend rendering and layout

fortplot_svg_markers fortplot_svg_markers.f90

Standalone SVG marker element generation

fortplot_system_commands fortplot_system_commands.f90
fortplot_system_runtime fortplot_system_runtime.f90

Runtime OS detection and cross-platform system operations orchestrator

Read more…
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

Shared test file utilities.

fortplot_test_output_helpers fortplot_test_output_helpers.f90

Utilities for directing test artifact output into structured directories

fortplot_test_pdf_tokenizer fortplot_test_pdf_tokenizer.f90

PDF stream tokenizer utilities for testing

Read more…
fortplot_test_pdf_utils fortplot_test_pdf_utils.f90

PDF stream extraction utilities for testing

Read more…
fortplot_testing fortplot_testing.f90

Testing utilities module with proper error handling

fortplot_text fortplot_text.f90

Main text module that provides backend-agnostic font and layout services

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

Read more…
fortplot_tick_formatting fortplot_tick_formatting.f90

Tick value formatting functions with multiple strategies

Read more…
fortplot_tick_scales fortplot_tick_scales.f90

Specialized tick generation for logarithmic and symmetric logarithmic scales

Read more…
fortplot_ticks fortplot_ticks.f90

Tick generation and formatting for all scale types

Read more…
fortplot_truetype fortplot_truetype.f90

Pure Fortran TrueType font parser and rasterizer. Based on stb_truetype.h v1.26 by Sean Barrett. Original C implementation rewritten in Fortran for the fortplot project.

fortplot_tt_binary fortplot_tt_binary.f90

Big-endian binary readers for TrueType font parsing. Fortran equivalents of stb_truetype.h macros: ttBYTE, ttUSHORT, ttSHORT, ttULONG. All offsets are 0-based to match the TTF specification directly.

fortplot_tt_cmap fortplot_tt_cmap.f90

TrueType cmap (character map) table parser. Maps Unicode codepoints to glyph indices, supporting formats 0, 4, 6, 12, and 13.

fortplot_tt_curves fortplot_tt_curves.f90

TrueType glyph outline curve tessellation. Converts quadratic/cubic Bezier curves from glyph outlines into flat line segments suitable for rasterization. Fortran port of stbtt_FlattenCurves and related functions from stb_truetype.h lines 3547-3693.

fortplot_tt_edge_sort fortplot_tt_edge_sort.f90

TrueType edge sorting utilities. Sorts glyph outline edges by y0 for scanline rasterization.

fortplot_tt_metrics fortplot_tt_metrics.f90

TrueType font metrics: scale factors, vertical/horizontal metrics, glyph offsets, and bounding boxes. Pure Fortran implementations operating directly on the font byte array via fortplot_tt_binary.

fortplot_tt_outlines fortplot_tt_outlines.f90

TrueType glyph outline extraction. Parses the glyf table to extract vertex data (moves, lines, quadratic bezier curves) for simple and composite glyphs. Fortran port of stbtt__GetGlyphShapeTT from stb_truetype.h lines 1658-1895.

fortplot_tt_rasterizer fortplot_tt_rasterizer.f90

TrueType scanline rasterizer (v2 analytical antialiasing). Converts tessellated glyph outlines into 8-bit grayscale bitmaps. Fortran port of the STB v2 rasterizer from stb_truetype.h.

fortplot_tt_scanline_fill fortplot_tt_scanline_fill.f90

Scanline coverage helpers for the TrueType analytical antialias rasterizer. Split from fortplot_tt_rasterizer to keep that module under the size limit.

fortplot_tt_tables fortplot_tt_tables.f90

TrueType table lookup and font initialization. Validates font signatures, finds tables in the table directory, and initializes a font by locating all required tables and the cmap encoding.

fortplot_twin_axes_rendering fortplot_twin_axes_rendering.f90

Twin axes label rendering for raster, PDF, and ASCII backends Extracted from fortplot_figure_rendering_pipeline for size compliance (Issue #1747)

fortplot_unicode fortplot_unicode.f90
fortplot_utils fortplot_utils.f90

Utility functions module for common operations

Read more…
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_vector_plot_helpers fortplot_vector_plot_helpers.f90

Vector plot (quiver, streamplot, refline) rendering helpers

Read more…
fortplot_windows_test_helper fortplot_windows_test_helper.f90

Windows-specific test helpers for CI compatibility Issue #300: Windows CI environment compatibility

fortplot_zlib_checksums fortplot_zlib_checksums.f90

CRC32 and Adler-32 checksum calculations for zlib.

Read more…
fortplot_zlib_compress fortplot_zlib_compress.f90

Deflate compression, CRC32, and Adler-32 checksum implementation Extracted from fortplot_zlib_core for size compliance (Issue #1747)

fortplot_zlib_core fortplot_zlib_core.f90

Re-export facade for zlib compress and decompress modules.

Read more…
fortplot_zlib_decompress fortplot_zlib_decompress.f90

Pure Fortran implementation of zlib decompression and CRC32.

Read more…