| Procedure | Location | Procedure Type | Description |
|---|---|---|---|
| add_3d_line_plot_data | fortplot_3d_plots | Subroutine | Add 3D line plot data by projecting to 2D |
| add_3d_plot | fortplot_3d_plots | Subroutine | Add 3D line plot to figure (projected to 2D) |
| add_3d_plot | fortplot_matplotlib_plot_wrappers | Interface | |
| add_arrow_annotation | fortplot_plot_annotations | Subroutine | Add arrow annotation to figure |
| add_boxplot | fortplot_figure_boxplot | Subroutine | Add a box plot to the plot array |
| add_colored_contour_plot_data | fortplot_figure_grid_plot_registration | Subroutine | |
| add_contour | fortplot_matplotlib_field_wrappers | Subroutine | Object-oriented contour helper (matplotlib-compatible kwargs) |
| add_contour_filled | fortplot_matplotlib_field_wrappers | Subroutine | Object-oriented filled contour helper (matplotlib-compatible kwargs) |
| add_contour_filled_impl | fortplot_plot_contours | Subroutine | Add filled contour plot with colors |
| add_contour_impl | fortplot_plot_contours | Subroutine | Add basic contour plot |
| add_contour_plot_data | fortplot_figure_grid_plot_registration | Subroutine | |
| add_contourf | fortplot_matplotlib_field_wrappers | Subroutine | matplotlib-canonical alias for add_contour_filled |
| add_errorbar | fortplot_matplotlib_errorbar | Interface | |
| add_fill_between_plot_data | fortplot_figure_plot_management | Subroutine | |
| add_line_plot_data | fortplot_2d_plots | Subroutine | Add line plot data with comprehensive validation Enhanced Issue #854: Added comprehensive parameter validation |
| add_mark_to_state | fortplot_spec_mark_handlers | Subroutine | |
| add_pcolormesh | fortplot_matplotlib_mesh_wrappers | Subroutine | Object-oriented pcolormesh helper (matplotlib-compatible kwargs) |
| add_pcolormesh_impl | fortplot_plot_contours | Subroutine | Add pseudocolor mesh plot |
| add_pie_legend_entries | fortplot_figure_legend_setup | Subroutine | |
| add_plot | fortplot_2d_plots | Interface | |
| add_plot | fortplot_matplotlib_plot_wrappers | Interface | |
| add_plot_impl | fortplot_2d_plots | Subroutine | Add 2D line plot to figure |
| add_quiver | fortplot_matplotlib_vector_wrappers | Interface | |
| add_scatter | fortplot_matplotlib_scatter | Interface | |
| add_scatter_2d | fortplot_scatter_plots | Interface | |
| add_scatter_2d_impl | fortplot_scatter_plots | Subroutine | Add 2D scatter plot to figure |
| add_scatter_3d | fortplot_scatter_plots | Interface | |
| add_scatter_3d_impl | fortplot_scatter_plots | Subroutine | Add 3D scatter plot to figure |
| add_scatter_plot | fortplot_figure_scatter | Subroutine | Add a single efficient scatter plot object Properly handles thousands of points with single plot object |
| add_scatter_plot_data | fortplot_scatter_plots | Subroutine | Add scatter plot data with optional properties |
| add_streamline_to_figure | fortplot_streamplot_core | Subroutine | Add streamline trajectory to figure as line plot |
| add_subplot_plot | fortplot_figure_subplots | Subroutine | Add a plot to a specific subplot |
| add_surface | fortplot_matplotlib_mesh_wrappers | Subroutine | Object-oriented surface helper (matplotlib-compatible kwargs) |
| add_surface | fortplot_3d_plots | Subroutine | Add surface plot to figure |
| add_surface_plot_data | fortplot_figure_grid_plot_registration | Subroutine | |
| add_text_annotation | fortplot_plot_annotations | Subroutine | Add text annotation to figure |
| add_text_element | fortplot_ascii_text_elements | Subroutine | Create and store a text element on the ASCII canvas |
| advance_pattern_state | fortplot_line_styles | Subroutine | Advance pattern state for continuous rendering Following SRP - handles only state advancement |
| analyze_edge_smoothness | fortplot_imagemagick | Function | |
| annotate | fortplot_text_stub | Subroutine | Add arrow annotation to the current figure |
| append_ascii_legend_line_helper | fortplot_ascii_legend | Interface | |
| append_field_bool | fortplot_spec_json_field_plot | Subroutine | |
| append_field_int | fortplot_spec_json_field_plot | Subroutine | |
| append_field_real | fortplot_spec_json_field_plot | Subroutine | |
| append_field_real_array | fortplot_spec_json_field_plot | Subroutine | |
| append_field_string | fortplot_spec_json_field_plot | Subroutine | |
| append_string | fortplot_test_pdf_utils | Subroutine | |
| apply_aspect_ratio_if_needed | fortplot_figure_render_steps | Subroutine | |
| apply_colormap_to_array | fortplot_color_conversions | Subroutine | Apply colormap to array of values efficiently |
| apply_config_to_state | fortplot_spec_config_apply | Subroutine | Translate config_t into figure_state_t fields. |
| apply_custom_axis_ticks | fortplot_pdf_axes_tick_data | Subroutine | Apply custom tick positions/labels, converting data coords to plot area coords |
| apply_inverse_scale_transform | fortplot_scales | Function | Apply inverse scale transformation to recover original value |
| apply_marching_squares_lookup | fortplot_contour_algorithms | Subroutine | Apply marching squares lookup table to get line segments |
| apply_padding_to_margins | fortplot_spec_config_apply | Subroutine | Convert Vega-Lite padding to figure_state_t margins. |
| apply_scale_transform | fortplot_scales | Function | Apply forward scale transformation to a single value |
| apply_spec_to_render_state | fortplot_spec_rendering | Subroutine | |
| apply_style_defaults | fortplot_spec_config_apply | Subroutine | Fill spec%config from built-in style. When force=.true., overrides any JSON-provided config. When force=.false. (default), only fills when absent. |
| approx_equal | fortplot_spec_rendering_utils | Function | |
| ascii_add_legend_entry_impl | fortplot_ascii_legend | Interface | |
| ascii_calc_legend_dims_impl | fortplot_ascii_legend | Interface | |
| ascii_calc_legend_pos_impl | fortplot_ascii_legend | Interface | |
| ascii_clear_legend_impl | fortplot_ascii_legend | Interface | |
| ascii_clear_pie_legend_impl | fortplot_ascii_legend | Interface | |
| ascii_draw_axes_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_draw_line_primitive | fortplot_ascii_primitives | Subroutine | |
| ascii_draw_secondary_x_axis_top | fortplot_ascii_secondary_axes | Subroutine | Draw top x-axis tick labels for ASCII backend |
| ascii_draw_secondary_y_axis | fortplot_ascii_secondary_axes | Subroutine | Draw right y-axis tick labels for ASCII backend |
| ascii_draw_text_helper | fortplot_ascii_text | Subroutine | ASCII text drawing with legend processing (moved from main module) |
| ascii_draw_text_primitive | fortplot_ascii_primitives | Subroutine | |
| ascii_extract_rgb_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_fill_quad_primitive | fortplot_ascii_primitives | Subroutine | Fill quadrilateral using character mapping based on current color |
| ascii_finalize | fortplot_ascii_rendering | Subroutine | |
| ascii_get_output | fortplot_ascii_rendering | Function | Get the complete ASCII canvas as a string |
| ascii_get_png_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_marker_char | fortplot_ascii_utils | Function | |
| ascii_prepare_3d_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_register_pie_legend_impl | fortplot_ascii_legend | Interface | |
| ascii_render_axes_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_render_legend_impl | fortplot_ascii_legend | Interface | |
| ascii_render_ylabel_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_save_coord_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_set_coord_impl | fortplot_ascii_backend_ops | Subroutine | |
| ascii_set_legend_border_impl | fortplot_ascii_legend | Interface | |
| assert_equals | fortplot_testing | Subroutine | |
| assert_file_exists | fortplot_testing | Subroutine | |
| assert_pdf_file_valid | fortplot_test_output_helpers | Subroutine | |
| assert_true | fortplot_testing | Subroutine | |
| assign_pending_autopct_helper | fortplot_ascii_legend | Interface | |
| axhline | fortplot_matplotlib_axes | Subroutine | Draw a horizontal reference line at data value y (matplotlib-compatible) |
| axis | fortplot_matplotlib_axes | Interface | Set aspect ratio: axis('equal'), axis('auto'), or axis(2.0) |
| axvline | fortplot_matplotlib_axes | Subroutine | Draw a vertical reference line at data value x (matplotlib-compatible) |
| backend_associated_figure | fortplot_figure_core_io_figure | Function | Check if backend is allocated |
| backend_color_figure | fortplot_figure_core_io_figure | Subroutine | Set backend color |
| backend_is_ascii | fortplot_legend_drawing | Function | Detect whether backend is operating in ASCII mode based on canvas size |
| backend_line_figure | fortplot_figure_core_io_figure | Subroutine | Draw line using backend |
| bar | fortplot_matplotlib_plot_wrappers | Interface | |
| bar_impl | fortplot_plot_bars | Subroutine | Add vertical bar plot |
| bar_plot_state | fortplot_plot_bars | Subroutine | |
| bar_rgb_array | fortplot_matplotlib_plot_wrappers | Subroutine | Bar with per-bar RGB color arrays |
| barh | fortplot_matplotlib_plot_wrappers | Interface | |
| barh_impl | fortplot_plot_bars | Subroutine | Add horizontal bar plot |
| barh_plot_state | fortplot_plot_bars | Subroutine | |
| barh_rgb_array | fortplot_matplotlib_plot_wrappers | Subroutine | Barh with per-bar RGB color arrays |
| basic_legend_example | legend_demo | Subroutine | Basic legend usage with labeled plots |
| bit_reverse | fortplot_zlib_compress | Function | Reverses the bits of a given value up to num_bits. |
| bitmap_to_png_buffer | fortplot_png_encoder | Subroutine | Convert 3D RGB bitmap to PNG buffer format with filter bytes |
| blend_pixel | fortplot_raster_primitives | Subroutine | Alpha blend a pixel with existing pixel data |
| boxplot | fortplot_matplotlib_plot_wrappers | Interface | |
| boxplot_impl | fortplot_plot_statistics | Subroutine | Add boxplot |
| build_file_path | fortplot_doc_utils | Subroutine | |
| build_fortran_url | fortplot_documentation | Subroutine | |
| build_fortran_url | fortplot_doc_utils | Subroutine | |
| build_local_fortran_path | fortplot_documentation | Subroutine | |
| build_local_fortran_path | fortplot_doc_utils | Subroutine | |
| build_output_path | fortplot_documentation | Subroutine | |
| build_output_path | fortplot_doc_utils | Subroutine | |
| build_readme_path | fortplot_documentation | Subroutine | |
| build_readme_path | fortplot_doc_utils | Subroutine | |
| build_scatter_size_array | fortplot_matplotlib_scatter_utils | Subroutine | Build a uniform or per-point size array for scatter markers. |
| bytes_to_string | fortplot_test_pdf_utils | Subroutine | |
| calculate_adler32 | fortplot_zlib_checksums | Function | Calculate Adler-32 checksum for zlib |
| calculate_aligned_position | fortplot_annotation_layout | Subroutine | Calculate aligned text position based on alignment settings |
| calculate_ascii_legend_dimensions | fortplot_ascii_legend | Interface | |
| calculate_ascii_legend_position | fortplot_ascii_legend | Interface | |
| calculate_figure_data_ranges | fortplot_figure_data_ranges | Subroutine | Calculate overall data ranges for the figure with robust edge case handling |
| calculate_histogram_bins | fortplot_figure_histogram | Subroutine | Calculate histogram bin edges and counts from data. |
| calculate_legend_box | fortplot_legend_layout | Function | Calculate optimal legend box dimensions and position DRY: Centralized legend box calculation logic |
| calculate_legend_position | fortplot_legend_drawing | Subroutine | Calculate legend position based on backend and position setting |
| calculate_log_minor_tick_positions | fortplot_tick_calculation | Subroutine | Calculate minor tick positions for log scale at 2,3,4,5,6,7,8,9 within decades |
| calculate_marching_squares_config | fortplot_contour_algorithms | Subroutine | Calculate marching squares configuration for a cell |
| calculate_mathtext_height_internal | fortplot_text_layout | Function | Calculate total height of mathematical text elements |
| calculate_mathtext_width_internal | fortplot_text_layout | Function | Calculate total width of mathematical text elements |
| calculate_minor_tick_positions | fortplot_tick_calculation | Subroutine | Calculate minor tick positions between major ticks Places minor_count minor ticks between each pair of major ticks |
| calculate_nice_axis_limits | fortplot_tick_calculation | Subroutine | Calculate nice axis limits that encompass the data like matplotlib The axis limits are set to nice round numbers based on tick locations |
| calculate_optimal_legend_dimensions | fortplot_legend_layout | Subroutine | Calculate optimal legend dimensions using actual text system measurements KISS: Based on measured text content, not estimates |
| calculate_pdf_plot_area | fortplot_pdf_coordinate | Subroutine | Calculate plot area for PDF backend (mathematical coordinates: Y=0 at bottom) |
| calculate_plot_area | fortplot_layout | Subroutine | Calculate plot area based on canvas size and margins (matplotlib-compatible) Note: left/bottom are margins, right/top are edge positions |
| calculate_rotated_bounds | fortplot_annotation_layout | Subroutine | Calculate bounding box for rotated text |
| calculate_rotated_text_bounds | fortplot_annotation_layout | Subroutine | Calculate bounding box for rotated text |
| calculate_text_anchor | fortplot_annotation_layout | Subroutine | Calculate anchor position based on alignment settings |
| calculate_text_descent | fortplot_text_layout | Function | Calculate the descent (below baseline) portion of text in pixels |
| calculate_text_height | fortplot_text_layout | Function | Calculate the pixel height of text using STB TrueType Supports mathematical notation with superscripts and subscripts |
| calculate_text_height_with_size | fortplot_text_layout | Function | Calculate text height for a given font pixel size |
| calculate_text_height_with_size_internal | fortplot_text_layout | Function | Internal text height calculation based on font metrics |
| calculate_text_metrics | fortplot_annotation_layout | Subroutine | Calculate text dimensions for given annotation |
| calculate_text_metrics_safe | fortplot_annotation_layout | Subroutine | Safe text metrics calculation with error handling |
| calculate_text_width | fortplot_text_layout | Function | Calculate the pixel width of text using STB TrueType with UTF-8 support Supports mathematical notation with superscripts and subscripts |
| calculate_text_width_with_size | fortplot_text_layout | Function | Calculate text width using a specific font size Supports mathematical notation with superscripts and subscripts |
| calculate_text_width_with_size_internal | fortplot_text_layout | Function | Internal text width calculation to avoid circular dependencies Note: Uses len(text) not len_trim to preserve trailing spaces in mathtext |
| calculate_tick_labels | fortplot_tick_calculation | Subroutine | Calculate appropriate tick labels at nice locations like matplotlib Ensures all labels have consistent formatting and nice round numbers |
| calculate_tick_labels_log | fortplot_tick_scales | Subroutine | Calculate logarithmic tick labels at powers of 10 with sub-ticks |
| calculate_tick_labels_symlog | fortplot_tick_scales | Subroutine | Calculate symlog tick labels with improved linear and log regions |
| calculate_x_axis_label_position | fortplot_label_positioning | Subroutine | Calculate X-axis label position (40px below plot) |
| calculate_x_label_position | fortplot_label_positioning | Subroutine | Calculate X-axis label position with matplotlib-style centering and spacing |
| calculate_x_tick_label_position | fortplot_label_positioning | Subroutine | Calculate X-axis tick label position using proper font metrics and matplotlib spacing |
| calculate_x_tick_label_position_pdf | fortplot_label_positioning | Subroutine | Calculate X-axis tick label position for PDF (Y=0 at bottom, increases upward) |
| calculate_y_axis_label_position | fortplot_label_positioning | Subroutine | Calculate Y-axis label position with proper spacing from tick labels |
| calculate_y_label_position | fortplot_label_positioning | Subroutine | Calculate Y-axis label position with right alignment and proper spacing |
| calculate_y_tick_label_position | fortplot_label_positioning | Subroutine | Calculate Y-axis tick label position using proper font metrics |
| calculate_y_tick_label_position_pdf | fortplot_label_positioning | Subroutine | Calculate Y-axis tick label position for PDF (Y=0 at bottom, increases upward) |
| cartesian_to_polar | fortplot_polar | Subroutine | Convert Cartesian to polar coordinates Returns theta in [0, 2*pi) range |
| catmull_rom_interpolate | fortplot_contour_algorithms | Subroutine | Catmull-Rom spline interpolation between P1 and P2 t in [0,1], P0/P3 are control points |
| check_command_available_runtime | fortplot_system_commands | Subroutine | |
| check_directory_exists | fortplot_file_operations | Subroutine | |
| check_ffmpeg_available | fortplot_pipe | Function | |
| check_file_exists | fortplot_doc_utils | Function | |
| check_imagemagick_available | fortplot_imagemagick | Function | |
| check_utf8_sequence | fortplot_unicode | Subroutine | Check if UTF-8 sequence is valid and return its length |
| clamp_extreme_log_range | fortplot_scales | Subroutine | Clamp extreme logarithmic ranges to ensure usable plots |
| clamp_to_unit | fortplot_color_definitions | Function | Clamp value to [0,1] range |
| cleanup_temp_file | fortplot_system_viewer | Subroutine | Remove temporary file (best effort, no error on failure) |
| cleanup_text_system | fortplot_text_fonts | Subroutine | Clean up text system resources |
| clear_color_cache | fortplot_color_parsing | Subroutine | Clear the color cache |
| clear_pie_legend_entries | fortplot_ascii_legend | Interface | |
| clear_streamline_data | fortplot_figure_streamlines | Subroutine | Clear streamline data |
| clip_to_data_bounds | fortplot_annotation_rendering | Subroutine | |
| close_ffmpeg_pipe | fortplot_pipe | Function | |
| codepoint_to_default_placeholder | fortplot_unicode | Subroutine | Convert unknown codepoint to default placeholder format |
| codepoint_to_lowercase_greek | fortplot_unicode | Function | Convert lowercase Greek codepoint to ASCII name |
| codepoint_to_uppercase_greek | fortplot_unicode | Function | Convert uppercase Greek codepoint to ASCII name |
| color_to_byte | fortplot_raster_primitives | Function | Convert floating-point color value [0,1] to byte [0,255] |
| colorbar | fortplot_matplotlib_colorbar | Subroutine | |
| colormap_value_to_color | fortplot_colormap | Subroutine | Convert data value to RGB color using colormap |
| compare_images_psnr | fortplot_imagemagick | Function | |
| compare_images_rmse | fortplot_imagemagick | Function | |
| compare_with_baseline | fortplot_validation | Function | |
| composite_bitmap_to_raster | fortplot_bitmap | Subroutine | Composite 3D RGB bitmap directly onto raster image buffer |
| composite_bitmap_to_raster_0 | fortplot_bitmap | Subroutine | Composite 3D RGB bitmap onto raster buffer using 0-based destination coords |
| composite_image | fortplot_bitmap | Subroutine | |
| compute_angular_ticks | fortplot_polar | Subroutine | Compute angular tick positions and labels for polar plot Returns angles in radians and labels in degrees |
| compute_date_ticks | fortplot_axes_date | Subroutine | |
| compute_default_contour_levels | fortplot_contour_level_calculation | Subroutine | |
| compute_non_overlapping_mask | fortplot_raster_ticks | Subroutine | |
| compute_non_overlapping_mask_simple | fortplot_raster_axes_secondary | Subroutine | |
| compute_radial_ticks | fortplot_polar | Subroutine | Compute radial tick positions for polar plot |
| compute_scale_ticks | fortplot_axes | Subroutine | Compute tick positions for different scale types |
| compute_streamplot_arrows | fortplot_streamplot_arrow_utils | Subroutine | Compute arrow metadata for streamlines based on trajectory geometry |
| compute_tight_subplot_margins | fortplot_subplot_layout | Subroutine | |
| compute_title_position | fortplot_raster_labels | Subroutine | Compute the position for centered title above plot area |
| compute_ylabel_x_pos | fortplot_raster_labels | Function | Compute x-position for ylabel to avoid overlapping with y-tick labels |
| compute_ylabel_x_pos | fortplot_raster_axes_secondary | Function | |
| compute_ylabel_x_pos_old | fortplot_raster_axes_secondary | Function | |
| configure_figure_dimensions | fortplot_figure_configuration | Subroutine | Configure figure dimensions |
| configure_grid | fortplot_figure_grid | Subroutine | Configure grid settings |
| contains_format_chars | fortplot_format_parser | Function | Check if a style string contains matplotlib format characters Returns false for named linestyles (solid, dashed, etc) |
| contains_pie_plot | fortplot_figure_aspect | Function | Detect whether a collection of plots contains at least one pie chart |
| contains_unicode | fortplot_unicode | Function | Check if text contains Unicode characters |
| contour | fortplot_matplotlib_field_wrappers | Subroutine | Draw contour lines (matplotlib-compatible) |
| contour_filled | fortplot_matplotlib_field_wrappers | Subroutine | Draw filled contour regions (matplotlib-compatible) |
| contourf | fortplot_matplotlib_field_wrappers | Subroutine | matplotlib-canonical alias for contour_filled |
| coordinates_from_centers | fortplot_pcolormesh | Subroutine | Infer vertex edges from center coordinates for uniform grids |
| copy_file_content | fortplot_documentation | Subroutine | |
| core_add_contour | fortplot_figure_core_operations | Subroutine | |
| core_add_contour_filled | fortplot_figure_core_operations | Subroutine | Add a filled contour plot to the figure |
| core_add_fill_between | fortplot_figure_core_operations | Subroutine | |
| core_add_pcolormesh | fortplot_figure_core_operations | Subroutine | Add a pcolormesh plot to the figure |
| core_add_pie | fortplot_figure_core_operations | Subroutine | |
| core_add_plot | fortplot_figure_core_operations | Subroutine | |
| core_add_surface | fortplot_figure_core_operations | Subroutine | Add a 3D surface plot to the figure |
| core_axhline | fortplot_figure_reflines | Subroutine | Draw a horizontal line spanning the axes at y position |
| core_axvline | fortplot_figure_reflines | Subroutine | Draw a vertical line spanning the axes at x position |
| core_backend_arrow | fortplot_figure_core_accessors | Subroutine | |
| core_backend_associated | fortplot_figure_core_accessors | Function | |
| core_backend_color | fortplot_figure_core_accessors | Subroutine | |
| core_backend_line | fortplot_figure_core_accessors | Subroutine | |
| core_boxplot | fortplot_figure_core_advanced | Subroutine | Create a box plot |
| core_clear | fortplot_figure_management | Subroutine | Clear the figure for reuse, preserving backend settings |
| core_clear_streamlines | fortplot_figure_management | Subroutine | |
| core_colorbar | fortplot_figure_core_advanced | Subroutine | Enable a stateful colorbar for the current figure. |
| core_destroy | fortplot_figure_management | Subroutine | |
| core_extract_png_data_for_animation | fortplot_figure_core_accessors | Subroutine | |
| core_extract_rgb_data_for_animation | fortplot_figure_core_accessors | Subroutine | |
| core_figure_legend | fortplot_figure_core_utils | Subroutine | |
| core_get_height | fortplot_figure_core_accessors | Function | |
| core_get_plot_count | fortplot_figure_core_accessors | Function | |
| core_get_plots | fortplot_figure_core_accessors | Function | |
| core_get_rendered | fortplot_figure_core_accessors | Function | |
| core_get_width | fortplot_figure_core_accessors | Function | |
| core_get_x_max | fortplot_figure_core_accessors | Function | |
| core_get_x_min | fortplot_figure_core_accessors | Function | |
| core_get_y_max | fortplot_figure_core_accessors | Function | |
| core_get_y_min | fortplot_figure_core_accessors | Function | |
| core_grid | fortplot_figure_core_config | Subroutine | |
| core_hist | fortplot_figure_core_advanced | Subroutine | Create a histogram plot (matplotlib-compatible). |
| core_hlines | fortplot_figure_reflines | Subroutine | Draw horizontal lines at each y position from xmin to xmax |
| core_initialize | fortplot_figure_core_operations | Subroutine | |
| core_quiver | fortplot_figure_core_operations | Subroutine | Add quiver plot (discrete vector arrows) to figure |
| core_savefig | fortplot_figure_core_operations | Subroutine | |
| core_savefig_with_status | fortplot_figure_core_operations | Subroutine | |
| core_scatter | fortplot_figure_core_advanced | Subroutine | Add an efficient scatter plot using a single plot object Properly handles thousands of points without O(n) overhead |
| core_set_line_width | fortplot_figure_core_config | Subroutine | |
| core_set_rendered | fortplot_figure_core_accessors | Subroutine | |
| core_set_title | fortplot_figure_core_config | Subroutine | |
| core_set_xaxis_date_format | fortplot_figure_core_config | Subroutine | |
| core_set_xlabel | fortplot_figure_core_config | Subroutine | |
| core_set_xlim | fortplot_figure_core_config | Subroutine | |
| core_set_xscale | fortplot_figure_core_config | Subroutine | |
| core_set_yaxis_date_format | fortplot_figure_core_config | Subroutine | |
| core_set_ydata | fortplot_figure_core_utils | Subroutine | |
| core_set_ylabel | fortplot_figure_core_config | Subroutine | |
| core_set_ylim | fortplot_figure_core_config | Subroutine | |
| core_set_yscale | fortplot_figure_core_config | Subroutine | |
| core_setup_png_backend_for_animation | fortplot_figure_core_accessors | Subroutine | |
| core_show | fortplot_figure_core_operations | Subroutine | |
| core_streamplot | fortplot_figure_core_operations | Subroutine | |
| core_vlines | fortplot_figure_reflines | Subroutine | Draw vertical lines at each x position from ymin to ymax |
| count_animation_frames | fortplot_ascii_player | Subroutine | Count frames in a .txt animation without playing them. |
| crc32_calculate | fortplot_zlib_checksums | Function | Calculate CRC32 checksum using standard polynomial |
| create_ascii_canvas | fortplot_ascii | Function | |
| create_directory_recursive | fortplot_file_operations | Subroutine | |
| create_directory_runtime | fortplot_file_operations | Subroutine | |
| create_histogram_line_data | fortplot_figure_histogram | Subroutine | Create line data for histogram visualization as connected rectangles. |
| create_legend | fortplot_legend_state | Function | Factory function following Dependency Inversion |
| create_legend | fortplot_legend | Function | Factory function following Dependency Inversion |
| create_output_directory | save_animation_demo | Subroutine | |
| create_pdf_canvas | fortplot_pdf | Interface | |
| create_pdf_canvas_core | fortplot_pdf_core | Function | |
| create_png_canvas | fortplot_png | Function | |
| create_projection_matrix | fortplot_projection | Subroutine | Create 4x4 projection matrix for 3D to 2D transformation |
| create_raster_canvas | fortplot_raster | Function | |
| create_raster_image | fortplot_raster_core | Function | |
| create_regular_mesh_grid | fortplot_pcolormesh | Subroutine | Create 2D meshgrid from 1D coordinate arrays Used internally for regular grid setup |
| create_single_directory | fortplot_file_operations | Subroutine | |
| create_subplots | fortplot_figure_subplots | Subroutine | Create a grid of subplots |
| create_svg_canvas | fortplot_svg | Function | |
| create_text_annotation | fortplot_annotation_types | Function | Create a text annotation with specified properties |
| data_to_screen_coords | fortplot_animation_rendering | Subroutine | |
| date_value_from_unix_seconds | fortplot_axes_date | Function | |
| date_value_to_unix_seconds | fortplot_axes_date | Function | |
| datetime_to_unix_seconds | fortplot_datetime | Function | |
| decode_ascii_legend_line | fortplot_ascii_legend | Interface | |
| default_date_format | fortplot_axes_date | Function | |
| default_validation_context | fortplot_validation_context | Function | |
| deflate_compress | fortplot_zlib_compress | Subroutine | Full deflate compression implementation with LZ77 and Huffman coding |
| delete_file_runtime | fortplot_file_operations | Subroutine | |
| demo_3d_line_plots | comprehensive_3d_demo | Subroutine | Demonstrate 3D line plots with helices and parametric curves |
| demo_3d_scatter_plots | comprehensive_3d_demo | Subroutine | Demonstrate various 3D scatter plot patterns and combinations |
| demo_3d_surface_plots | comprehensive_3d_demo | Subroutine | Demonstrate 3D surface plots with different mathematical functions |
| demo_all_marker_types | styling_demo | Subroutine | Demonstrates all available marker types |
| demo_basic_contour | contour_demo | Subroutine | Basic contour line plot with Gaussian function |
| demo_basic_gradient | pcolormesh_demo | Subroutine | Basic pcolormesh with simple gradient - enhanced 51x51 grid |
| demo_basic_plots | cmake_demo | Subroutine | |
| demo_basic_plots | fpm_demo | Subroutine | |
| demo_categorical_labels | bar_chart_demo | Subroutine | Demonstrates categorical axis labels for bar charts Uses set_xticks() with string labels to create categorical x-axis |
| demo_colormap_comparison | contour_demo | Subroutine | Compare different colormaps with ripple function |
| demo_different_colormaps | pcolormesh_demo | Subroutine | Demo different colormaps - enhanced 51x51 grid |
| demo_filled_contour | contour_demo | Subroutine | Filled contour plots with colorbar |
| demo_format_strings | styling_demo | Subroutine | Demonstrates matplotlib-style format strings |
| demo_line_styles | styling_demo | Subroutine | Demonstrates all available line styles |
| demo_mixed_contour_line | contour_demo | Subroutine | Contour plot combined with a line plot overlay |
| demo_mixed_plots | comprehensive_3d_demo | Subroutine | Demonstrate mixing 2D and 3D plots, and combining different 3D types |
| demo_multiple_formats | cmake_demo | Subroutine | |
| demo_multiple_formats | fpm_demo | Subroutine | |
| demo_negative_coordinates | pcolormesh_demo | Subroutine | Pcolormesh with negative coordinates and values to exercise edge cases |
| demo_object | fill_between_demo | Subroutine | |
| demo_object_energy | pie_chart_demo | Subroutine | |
| demo_object_grouped | bar_chart_demo | Subroutine | |
| demo_scatter_markers | styling_demo | Subroutine | Creates a scatter plot demonstrating markers in practical use |
| demo_scientific_visualization | cmake_demo | Subroutine | |
| demo_scientific_visualization | fpm_demo | Subroutine | |
| demo_show_viewer | display_demo | Subroutine | Demonstrates show_viewer() - opens in system PDF viewer |
| demo_sinusoidal_pattern | pcolormesh_demo | Subroutine | Pcolormesh with sinusoidal pattern - enhanced 51x51 grid |
| demo_smart_show | display_demo | Subroutine | Demonstrates show() - intelligent display selection |
| demo_stacked_bars | bar_chart_demo | Subroutine | Demonstrates stacked bar charts (Issue #1460) Uses bottom parameter to stack bars on top of each other |
| demo_stateful | fill_between_demo | Subroutine | |
| demo_stateful_grouped | bar_chart_demo | Subroutine | |
| demo_stateful_horizontal | bar_chart_demo | Subroutine | |
| demo_stateful_sales | pie_chart_demo | Subroutine | |
| dequeue_pie_autopct | fortplot_ascii_legend | Interface | |
| destroy_raster_image | fortplot_raster_core | Subroutine | |
| destroy_text_annotation | fortplot_annotation_types | Subroutine | Clean up text annotation resources |
| determine_decimal_places_from_step | fortplot_tick_calculation | Function | Determine decimal places based on step size for nice formatting |
| determine_decimals_from_ticks | fortplot_tick_calculation | Function | Determine decimal places from an array of tick positions. Uses the smallest non-zero spacing as representative step. |
| distance_point_to_line_segment | fortplot_raster_primitives | Function | Calculate minimum distance from point to line segment |
| dopri5_integrate | fortplot_streamline_integrator | Subroutine | Integrate streamline using DOPRI5 method with adaptive step size |
| draw | fortplot_matplotlib_session | Subroutine | Redraw the current figure to terminal (ASCII output) |
| draw_3d_axes | fortplot_3d_axes | Subroutine | Draw complete 3D axes frame with ticks and labels |
| draw_ascii_arrow | fortplot_ascii_drawing | Subroutine | Draw arrow using Unicode directional characters for ASCII backend |
| draw_ascii_axes_and_labels | fortplot_ascii_text | Subroutine | Draw axes and labels for ASCII backend |
| draw_ascii_marker | fortplot_ascii_drawing | Subroutine | |
| draw_backend_arrow | fortplot_figure_accessors | Subroutine | Draw arrow using backend |
| draw_backend_line | fortplot_figure_accessors | Subroutine | Draw line using backend |
| draw_basic_axes_frame | fortplot_margins | Subroutine | Draw basic rectangular axes frame Uses a procedure pointer to be backend-agnostic |
| draw_circle_antialiased | fortplot_raster_markers | Subroutine | Draw filled circle with antialiasing |
| draw_circle_outline_antialiased | fortplot_raster_markers | Subroutine | Draw circle outline with antialiasing |
| draw_circle_with_edge_face | fortplot_raster_markers | Subroutine | Draw circle with separate edge and face colors |
| draw_diamond_with_edge_face | fortplot_raster_markers | Subroutine | Draw diamond marker with separate edge and face colors |
| draw_filled_quad | fortplot_mesh_rendering | Subroutine | Draw a filled quadrilateral |
| draw_filled_quad_raster | fortplot_raster_primitives | Subroutine | Draw filled quadrilateral using scanline algorithm |
| draw_filled_quad_raster_alpha | fortplot_raster_primitives | Subroutine | Draw filled quadrilateral using scanline algorithm and alpha blending |
| draw_initial_frame | probability_animation_demo | Subroutine | |
| draw_line_distance_aa | fortplot_raster_primitives | Subroutine | Draw antialiased line using distance-based approach |
| draw_line_on_canvas | fortplot_ascii_drawing | Subroutine | |
| draw_mixed_font_text | fortplot_pdf_text_render | Subroutine | |
| draw_pdf_arrow | fortplot_pdf_drawing | Subroutine | Draw arrow marker in PDF |
| draw_pdf_arrow_at_coords | fortplot_pdf_markers | Subroutine | |
| draw_pdf_axes_and_labels | fortplot_pdf_axes | Subroutine | Draw complete axes system with labels using actual plot area coordinates |
| draw_pdf_circle_with_outline | fortplot_pdf_drawing | Subroutine | Draw filled circle with outline in PDF |
| draw_pdf_diamond_with_outline | fortplot_pdf_drawing | Subroutine | Draw filled diamond with outline in PDF |
| draw_pdf_frame_with_area | fortplot_pdf_axes_drawing | Subroutine | Draw the plot frame using actual plot area coordinates (FIXED version) |
| draw_pdf_marker_at_coords | fortplot_pdf_markers | Subroutine | |
| draw_pdf_mathtext | fortplot_pdf_mathtext_render | Subroutine | Draw text with mathematical notation |
| draw_pdf_minor_tick_marks | fortplot_pdf_axes_drawing | Subroutine | Draw minor tick marks (shorter than major ticks) |
| draw_pdf_secondary_x_axis_top | fortplot_pdf_secondary_axes | Subroutine | Draw secondary X axis at the top of the plot |
| draw_pdf_secondary_y_axis | fortplot_pdf_secondary_axes | Subroutine | Draw secondary Y axis on the right side of the plot |
| draw_pdf_square_with_outline | fortplot_pdf_drawing | Subroutine | Draw filled square with outline in PDF |
| draw_pdf_text | fortplot_pdf_text_render | Subroutine | |
| draw_pdf_text_bold | fortplot_pdf_text_render | Subroutine | |
| draw_pdf_text_direct | fortplot_pdf_text_render | Subroutine | |
| draw_pdf_tick_labels_with_area | fortplot_pdf_axes_drawing | Subroutine | Draw tick labels using actual plot area coordinates (FIXED version) |
| draw_pdf_tick_marks_with_area | fortplot_pdf_axes_drawing | Subroutine | Draw tick marks using actual plot area coordinates (FIXED version) |
| draw_pdf_title_and_labels | fortplot_pdf_axes_text | Subroutine | Draw plot title and axis labels |
| draw_pdf_x_marker | fortplot_pdf_drawing | Subroutine | Draw X-shaped marker in PDF |
| draw_quad_edges | fortplot_mesh_rendering | Subroutine | Draw quadrilateral edges |
| draw_rotated_mixed_font_text | fortplot_pdf_text_render | Subroutine | |
| draw_single_point_marker | fortplot_marker_rendering | Subroutine | Draw a visible marker for a single point This ensures single points are visible even without explicit markers |
| draw_square_with_edge_face | fortplot_raster_markers | Subroutine | Draw square marker with separate edge and face colors |
| draw_styled_line | fortplot_raster_line_styles | Subroutine | Draw line with pattern support (dashed, dotted, etc.) |
| draw_x_marker | fortplot_raster_markers | Subroutine | Draw X-shaped marker |
| edgecolors_are_none | fortplot_matplotlib_scatter_utils | Function | |
| effective_linewidth | fortplot_matplotlib_scatter_utils | Function | |
| emit_pdf_escape_or_fallback | fortplot_pdf_text_segments | Subroutine | |
| ends_with | fortplot_spec_rendering_utils | Function | |
| enforce_aspect_ratio | fortplot_figure_aspect | Subroutine | Adjust axis limits to enforce the specified aspect ratio. For equal aspect, x and y have the same scale per pixel. For numeric ratio, y-scale = ratio * x-scale. |
| enforce_pie_axis_equal | fortplot_figure_aspect | Subroutine | Adjust the figure axis limits so pie charts render with equal scaling |
| enqueue_pie_autopct | fortplot_ascii_legend | Interface | |
| ensure_directory_exists | fortplot_utils | Subroutine | Ensure output directory exists for a given filepath Extracts the parent directory and creates it securely using the runtime file operations with path validation. |
| ensure_fig_init | fortplot_matplotlib_session | Subroutine | Ensure the global figure exists and is initialized |
| ensure_figure_storage | fortplot_figure_initialization | Subroutine | Lazily allocate plot storage and the active backend so that operations invoked on a default-initialized figure_t do not dereference unallocated arrays (#1638). |
| ensure_global_figure_initialized | fortplot_matplotlib_session | Subroutine | Public wrapper to guarantee the singleton is ready for use |
| ensure_leading_zero | fortplot_tick_formatting | Subroutine | Ensure numbers like .5 become 0.5 for readability |
| ensure_test_output_dir | fortplot_test_output_helpers | Subroutine | Ensure a test output directory exists and return its normalized path |
| errorbar | fortplot_matplotlib_errorbar | Interface | |
| errorbar | fortplot_errorbar_plots | Interface | |
| errorbar_impl | fortplot_errorbar_plots | Subroutine | Add error bar plot to figure |
| escape_json_string | fortplot_spec_json | Function | Escape a string for safe JSON embedding. Handles: " -> \", \ -> \, and control characters. |
| escape_pdf_string | fortplot_pdf_text_escape | Subroutine | Escape special characters in PDF strings |
| escape_unicode_for_ascii | fortplot_unicode | Subroutine | Convert Unicode text to ASCII-compatible text for ASCII backend Processes UTF-8 input and converts Unicode characters to readable ASCII equivalents |
| escape_unicode_for_raster | fortplot_unicode | Subroutine | Pass through Unicode for raster rendering (STB TrueType supports Unicode) |
| estimate_pdf_text_width | fortplot_pdf_text_metrics | Function | Estimate rendered width (in PDF points) of a text string |
| expect_char | fortplot_spec_json_reader | Function | Expect and consume a specific character |
| extract_ascii_rgb_data | fortplot_ascii_backend_support | Subroutine | Extract RGB data from ASCII backend (not supported - dummy data) |
| extract_contour_regions | fortplot_contour_regions | Function | Extract polygonal regions between contour levels using marching squares |
| extract_figure_png_data_for_animation | fortplot_figure_animation | Subroutine | Extract PNG data for animation |
| extract_figure_rgb_data_for_animation | fortplot_figure_animation | Subroutine | Extract RGB data for animation |
| extract_frame_rgb_data | fortplot_animation_rendering | Subroutine | |
| extract_latex_command | fortplot_latex_parser | Subroutine | |
| extract_pdf_stream_text | fortplot_test_pdf_utils | Subroutine | |
| extract_png_data_for_animation_figure | fortplot_figure_core_io_figure | Subroutine | Extract PNG data for animation |
| extract_png_for_animation | fortplot_figure_accessors | Subroutine | Extract PNG data for animation |
| extract_rgb_data_for_animation_figure | fortplot_figure_core_io_figure | Subroutine | Extract RGB data for animation |
| extract_rgb_for_animation | fortplot_figure_accessors | Subroutine | Extract RGB data for animation |
| figure | fortplot_matplotlib_session | Subroutine | Create a matplotlib-style figure using the shared singleton |
| figure_add_contour | fortplot_figure_plots | Subroutine | Add a contour plot to the figure |
| figure_add_contour_filled | fortplot_figure_plots | Subroutine | Add a filled contour plot with color mapping |
| figure_add_contour_filled_operation | fortplot_figure_operations | Subroutine | Add a filled contour plot with color mapping |
| figure_add_contour_operation | fortplot_figure_operations | Subroutine | Add a contour plot to the figure |
| figure_add_fill_between | fortplot_figure_plots | Subroutine | Add an area fill between two curves |
| figure_add_fill_between_operation | fortplot_figure_operations | Subroutine | Add an area fill between two curves |
| figure_add_pcolormesh | fortplot_figure_plots | Subroutine | Add a pcolormesh plot |
| figure_add_pcolormesh_operation | fortplot_figure_operations | Subroutine | Add a pcolormesh plot |
| figure_add_pie | fortplot_figure_pie | Subroutine | Store pie chart slices using polar wedges with optional explode & colors |
| figure_add_pie_operation | fortplot_figure_operations | Subroutine | Add a pie chart to the figure |
| figure_add_plot | fortplot_figure_plots | Subroutine | Add a line plot to the figure |
| figure_add_plot_operation | fortplot_figure_operations | Subroutine | Add a line plot to the figure |
| figure_add_surface | fortplot_figure_plots | Subroutine | Add a 3D surface plot to the figure |
| figure_add_surface_operation | fortplot_figure_operations | Subroutine | Add a 3D surface plot to the figure |
| figure_backend_arrow | fortplot_figure_properties | Subroutine | Draw arrow using backend property |
| figure_backend_associated | fortplot_figure_properties | Function | Get backend association property |
| figure_backend_color | fortplot_figure_properties | Subroutine | Set backend color property |
| figure_backend_line | fortplot_figure_properties | Subroutine | Draw line using backend property |
| figure_boxplot_operation | fortplot_figure_operations | Subroutine | Create a box plot |
| figure_clear | fortplot_figure_management | Subroutine | Clear the figure to prepare for reuse (preserving backend settings) |
| figure_clear_streamlines | fortplot_figure_management | Subroutine | Clear streamline data |
| figure_destroy | fortplot_figure_management | Subroutine | Finalize and clean up figure |
| figure_extract_png_data_for_animation | fortplot_figure_management | Subroutine | Extract PNG data for animation |
| figure_extract_rgb_data_for_animation | fortplot_figure_management | Subroutine | Extract RGB data for animation |
| figure_get_height | fortplot_figure_properties | Function | Get figure height property |
| figure_get_plot_count | fortplot_figure_properties | Function | Get figure plot count property |
| figure_get_plots | fortplot_figure_properties | Function | Get figure plots property |
| figure_get_rendered | fortplot_figure_properties | Function | Get figure rendered property |
| figure_get_width | fortplot_figure_properties | Function | Get figure width property |
| figure_get_x_max | fortplot_figure_properties | Function | Get x maximum property |
| figure_get_x_min | fortplot_figure_properties | Function | Get x minimum property |
| figure_get_y_max | fortplot_figure_properties | Function | Get y maximum property |
| figure_get_y_min | fortplot_figure_properties | Function | Get y minimum property |
| figure_grid_operation | fortplot_figure_operations | Subroutine | Enable/disable and configure grid lines |
| figure_hist_operation | fortplot_figure_operations | Subroutine | Create a histogram plot (matplotlib-compatible). |
| figure_initialize | fortplot_figure_management | Subroutine | Initialize the figure with specified dimensions and backend Added DPI support for OO interface consistency with matplotlib interface |
| figure_legend_operation | fortplot_figure_operations | Subroutine | Add legend to figure |
| figure_render | fortplot_figure_render_engine | Subroutine | |
| figure_savefig | fortplot_figure_management | Subroutine | Save figure to file (backward compatibility version) |
| figure_savefig_with_status | fortplot_figure_management | Subroutine | Save figure to file with error status reporting |
| figure_scatter_operation | fortplot_figure_operations | Subroutine | Add an efficient scatter plot using a single plot object |
| figure_set_line_width_operation | fortplot_figure_operations | Subroutine | Set line width for subsequent plots |
| figure_set_rendered | fortplot_figure_properties | Subroutine | Set figure rendered property |
| figure_set_title_operation | fortplot_figure_operations | Subroutine | Set figure title |
| figure_set_xlabel_operation | fortplot_figure_operations | Subroutine | Set x-axis label |
| figure_set_xlim_operation | fortplot_figure_operations | Subroutine | Set x-axis limits |
| figure_set_xscale_operation | fortplot_figure_operations | Subroutine | Set x-axis scale type |
| figure_set_ydata_operation | fortplot_figure_operations | Subroutine | Update y data for an existing plot |
| figure_set_ylabel_operation | fortplot_figure_operations | Subroutine | Set y-axis label |
| figure_set_ylim_operation | fortplot_figure_operations | Subroutine | Set y-axis limits |
| figure_set_yscale_operation | fortplot_figure_operations | Subroutine | Set y-axis scale type |
| figure_setup_png_backend_for_animation | fortplot_figure_management | Subroutine | Setup PNG backend for animation |
| figure_show | fortplot_figure_management | Subroutine | Display the figure |
| figure_streamplot_operation | fortplot_figure_operations | Subroutine | Add streamline plot to figure using basic algorithm |
| figure_subplot_plot | fortplot_figure_management | Subroutine | Add a plot to a specific subplot |
| figure_subplot_plot_count | fortplot_figure_management | Function | Get the number of plots in a specific subplot |
| figure_subplot_set_title | fortplot_figure_management | Subroutine | Set the title for a specific subplot |
| figure_subplot_set_xlabel | fortplot_figure_management | Subroutine | Set the x-axis label for a specific subplot |
| figure_subplot_set_ylabel | fortplot_figure_management | Subroutine | Set the y-axis label for a specific subplot |
| figure_subplot_title | fortplot_figure_management | Function | Get the title for a specific subplot |
| figure_subplots | fortplot_figure_management | Subroutine | Create a grid of subplots |
| figure_to_spec | fortplot_spec_frontend_adapters | Subroutine | |
| figure_update_data_ranges | fortplot_figure_properties | Subroutine | Update data ranges based on current plot |
| figure_update_data_ranges_boxplot | fortplot_figure_properties | Subroutine | Update data ranges after adding boxplot - delegate to ranges module |
| figure_update_data_ranges_pcolormesh | fortplot_figure_properties | Subroutine | Update data ranges after adding pcolormesh plot - delegate to ranges module |
| file_exists | fortplot_doc_utils | Function | |
| fill | fortplot_matplotlib_plots | Interface | |
| fill_active_edges | fortplot_tt_scanline_fill | Subroutine | Fill scanline coverage from active edges. Port of stbtt__fill_active_edges_new. scanline is 0-based [0..w-1], scanline2 is 0-based [0..w]. In STB, fill function receives scanline_fill = scanline2+1. Here scanline2(k+1) = STB's scanline_fill[k]. |
| fill_ascii_heatmap | fortplot_ascii_drawing | Subroutine | Fill ASCII canvas with heatmap representation of 2D data |
| fill_between | fortplot_matplotlib_plots | Interface | |
| fill_horizontal_line | fortplot_raster_rendering | Subroutine | Fill horizontal line segment |
| fill_tick_positions_and_labels | fortplot_pdf_axes_tick_data | Subroutine | Fill tick positions and labels arrays |
| fill_triangle | fortplot_raster_rendering | Subroutine | Fill triangle using barycentric coordinates |
| finalize_pdf_stream | fortplot_pdf_core | Subroutine | |
| find_all_latex_commands | fortplot_latex_parser | Subroutine | |
| find_any_available_font | fortplot_text_fonts | Function | Find any available font using same priority order as system initialization |
| find_column | fortplot_spec_json_data | Function | Find column index by field name |
| find_font_by_name | fortplot_text_fonts | Function | Find font by name in typical system locations |
| find_group_index | fortplot_doc_output | Function | |
| find_latex_command | fortplot_latex_parser | Subroutine | |
| find_nice_tick_locations | fortplot_tick_calculation | Subroutine | Find nice tick locations following matplotlib's MaxNLocator algorithm exactly |
| find_subsequence | fortplot_test_pdf_tokenizer | Function | |
| format_angle_label | fortplot_polar | Function | Format angle in degrees as a label string |
| format_date_tick_label | fortplot_axes_date | Function | |
| format_log_tick_value | fortplot_tick_formatting | Function | Format logarithmic tick values using scientific notation like matplotlib |
| format_number | annotation_demo | Function | Simple number formatting for annotations |
| format_power_of_ten_label | fortplot_tick_formatting | Function | Build a mathtext-friendly power-of-ten label: 10^{n} or -10^{n} |
| format_tick_label | fortplot_axes | Function | Format a tick value as a string label |
| format_tick_value | fortplot_tick_formatting | Function | Format tick value based on data range like matplotlib |
| format_tick_value_consistent | fortplot_tick_calculation | Function | Format tick value with consistent decimal places for uniform appearance |
| format_tick_value_smart | fortplot_tick_formatting | Function | Smart tick value formatting with automatic exponential notation for long labels Limits output to max_chars and uses exponential notation when needed |
| format_unix_seconds | fortplot_datetime | Function | |
| fpart | fortplot_raster_primitives | Function | Fractional part of floating-point number |
| FuncAnimation | fortplot_animation | Function | Facade constructor: builds the animation_t and registers the save implementation so anim%save(...) works directly (per README). |
| FuncAnimation | fortplot_animation_core | Function | |
| gaussian_profile | probability_animation_demo | Function | |
| generate_axis_ticks_internal | fortplot_pdf_axes_tick_data | Subroutine | Internal helper to generate axis tick positions and labels |
| generate_default_contour_levels | fortplot_figure_grid_plot_registration | Subroutine | |
| generate_reference_image | fortplot_imagemagick | Subroutine | |
| generate_scale_aware_tick_labels | fortplot_tick_scales | Subroutine | Generate tick labels based on scale type - common function for all backends |
| generate_spiral_seeds | fortplot_streamline_placement | Subroutine | Generate seed points in spiral pattern starting from boundary Implements matplotlib's _gen_starting_points algorithm |
| generate_streamlines | fortplot_streamplot_core | Subroutine | Generate streamlines using matplotlib-compatible algorithm |
| generate_tick_data | fortplot_pdf_axes | Subroutine | Generate tick positions and labels for axes |
| generate_x_axis_ticks | fortplot_pdf_axes_tick_data | Subroutine | Generate X axis tick positions and labels |
| generate_y_axis_ticks | fortplot_pdf_axes_tick_data | Subroutine | Generate Y axis tick positions and labels |
| get_active_axis | fortplot_matplotlib_axes | Function | Return the name of the currently active axes. |
| get_actual_text_dimensions | fortplot_legend_layout | Function | Get actual text dimensions using text system measurements |
| get_ascii_png_data | fortplot_ascii_backend_support | Subroutine | Get PNG data from ASCII backend (not supported) |
| get_axis_tick_positions | fortplot_margins | Subroutine | Generate tick mark positions for basic axes |
| get_backend_from_filename | fortplot_utils | Function | Determine backend type from file extension |
| get_blend_char | fortplot_ascii_utils | Function | |
| get_cache_hit_rate | fortplot_color_parsing | Function | Get cache hit rate for performance monitoring |
| get_char_density | fortplot_ascii_utils | Function | |
| get_colormap_color | fortplot_colormap | Subroutine | Get RGB color from colormap for a normalized value [0,1] |
| get_contour_lines | fortplot_contour_algorithms | Subroutine | Extract contour lines from a cell using marching squares |
| get_default_marker | fortplot_markers | Function | Get default marker style |
| get_default_view_angles | fortplot_projection | Subroutine | Get default viewing angles matching matplotlib |
| get_error_message | fortplot_errors | Function | Get descriptive error message for status code |
| get_example_count | fortplot_doc_processing | Function | |
| get_example_dir | fortplot_doc_processing | Subroutine | |
| get_example_name | fortplot_doc_processing | Subroutine | |
| get_example_run_target | fortplot_documentation | Subroutine | |
| get_example_run_target | fortplot_doc_utils | Subroutine | |
| get_figure_height | fortplot_figure_accessors | Function | Get figure height from state |
| get_figure_plot_count | fortplot_figure_accessors | Function | Get number of plots from state |
| get_figure_plots | fortplot_figure_accessors | Function | Get pointer to plots array |
| get_figure_rendered | fortplot_figure_accessors | Function | Get rendered state |
| get_figure_width | fortplot_figure_accessors | Function | Get figure width from state |
| get_figure_x_max | fortplot_figure_accessors | Function | Get x maximum value from state |
| get_figure_x_min | fortplot_figure_accessors | Function | Get x minimum value from state |
| get_figure_y_max | fortplot_figure_accessors | Function | Get y maximum value from state |
| get_figure_y_min | fortplot_figure_accessors | Function | Get y minimum value from state |
| get_file_extension | fortplot_doc_utils | Function | |
| get_file_extension | fortplot_animation_validation | Function | |
| get_font_ascent_ratio | fortplot_text_fonts | Function | Get font ascent ratio for baseline positioning |
| get_font_metrics | fortplot_text_fonts | Subroutine | Get font metrics in pixels for current font and scale |
| get_font_scale | fortplot_text_fonts | Function | |
| get_font_scale_for_size | fortplot_text_fonts | Function | Get font scale for a specific pixel height |
| get_fortran_filename | fortplot_documentation | Subroutine | |
| get_fortran_filename | fortplot_doc_utils | Subroutine | |
| get_global_figure | fortplot_matplotlib_session | Function | Return the global figure pointer, initializing on demand |
| get_global_font | fortplot_text_fonts | Function | |
| get_height_figure | fortplot_figure_core_io_figure | Function | Get figure height |
| get_label_from_encoding | fortplot_spec_rendering_utils | Function | |
| get_legend_margins | fortplot_legend_layout | Function | Get appropriate margins for legend placement DRY: Centralized margin calculation |
| get_line_pattern | fortplot_line_styles | Subroutine | Get line pattern array for given style Following DRY principle - centralized pattern definitions |
| get_log_level | fortplot_logging | Function | Get the current global logging level Returns one of: LOG_LEVEL_SILENT, LOG_LEVEL_ERROR, LOG_LEVEL_WARNING, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG |
| get_marker_size | fortplot_markers | Function | Get standardized marker size for given style Eliminates magic number duplication across backends |
| get_output_title | fortplot_documentation | Function | |
| get_output_title | fortplot_doc_utils | Function | |
| get_parent_directory | fortplot_path_operations | Function | Extract parent directory from a path |
| get_pattern_length | fortplot_line_styles | Function | Calculate total length of pattern cycle Following KISS principle - simple sum calculation |
| get_pie_autopct | fortplot_ascii_legend | Interface | |
| get_pie_slice_marker_for_index | fortplot_figure_legend_setup | Function | |
| get_plot_count_figure | fortplot_figure_core_io_figure | Function | Get number of plots |
| get_png_data | fortplot_png | Subroutine | |
| get_rendered_figure | fortplot_figure_core_io_figure | Function | Get rendered state |
| get_subplot_plot_count | fortplot_figure_subplots | Function | Get the number of plots in a specific subplot |
| get_subplot_title | fortplot_figure_subplots | Function | Get the title for a specific subplot |
| get_temp_filename | fortplot_system_viewer | Subroutine | Generate unique temporary filename with proper platform handling |
| get_test_temp_dir | fortplot_windows_test_helper | Function | Get appropriate temporary directory for tests |
| get_text_bitmap_metrics | fortplot_bitmap | Subroutine | Get ascent/descent/height for a given pixel_height. |
| get_warning_count | fortplot_validation_context | Function | |
| get_width_figure | fortplot_figure_core_io_figure | Function | Get figure width |
| get_windows_safe_tolerance | fortplot_windows_test_helper | Function | Get Windows-safe numerical tolerance |
| get_x_max_figure | fortplot_figure_core_io_figure | Function | Get x maximum value |
| get_x_min_figure | fortplot_figure_core_io_figure | Function | Get x minimum value |
| get_y_max_figure | fortplot_figure_core_io_figure | Function | Get y maximum value |
| get_y_min_figure | fortplot_figure_core_io_figure | Function | Get y minimum value |
| grid | fortplot_matplotlib_axes | Subroutine | Toggle or style grid lines (matplotlib-compatible) |
| grid_figure | fortplot_figure_core_config | Subroutine | Enable/disable and configure grid lines |
| group_media_files | fortplot_doc_output | Subroutine | |
| handle_zero_range_ticks | fortplot_pdf_axes_tick_data | Subroutine | Handle ticks for zero or near-zero range data |
| has_graphical_session | fortplot_system_viewer | Function | Check if a graphical session is available Returns .true. if X11, Wayland, macOS GUI, or Windows GUI available |
| has_machine_precision_issues | fortplot_coordinate_validation | Function | Check if coordinates are too close together for reliable rendering |
| has_mathtext | fortplot_text_layout | Function | Check if text contains math segments delimited by '$...$' |
| hist | fortplot_matplotlib_hist_wrappers | Interface | |
| hist_figure | fortplot_figure_histogram | Subroutine | Add histogram to figure plots array (matplotlib-compatible). |
| hist_impl | fortplot_plot_statistics | Subroutine | Add histogram (matplotlib-compatible). |
| histogram | fortplot_matplotlib_hist_wrappers | Interface | |
| hlines | fortplot_matplotlib_axes | Subroutine | Draw one or more horizontal lines at y values between xmin and xmax |
| imshow | fortplot_matplotlib_plots | Subroutine | Display 2D array as an image (heatmap) |
| init_fixed_huffman_tables | fortplot_zlib_compress | Subroutine | Initialize fixed Huffman tables as per RFC 1951 |
| init_line_plot_data | fortplot_2d_plots | Subroutine | Initialize basic line plot data |
| init_text_system | fortplot_text_fonts | Function | Initialize STB TrueType font system with robust font discovery |
| initialize_backend | fortplot_utils | Subroutine | Initialize the appropriate backend based on type |
| initialize_figure_state | fortplot_figure_initialization | Subroutine | Initialize figure state with specified parameters Added Issue #854: Parameter validation for user input safety Added DPI support for OO interface consistency with matplotlib interface |
| initialize_pdf_stream | fortplot_pdf_core | Subroutine | |
| initialize_tick_arrays | fortplot_pdf_axes_tick_data | Subroutine | Initialize tick count and allocate arrays |
| initialize_warning_suppression | fortplot_logging | Subroutine | Initialize warning suppression based on environment variables Supports manual control and automatic CI detection |
| initialize_white_background | fortplot_bitmap | Subroutine | |
| initialize_zlib_debug | fortplot_zlib_checksums | Subroutine | Initialize debug logging based on FORTPLOT_ZLIB_DEBUG environment variable |
| interpolate_edge_crossings | fortplot_contour_algorithms | Subroutine | Interpolate the positions where contour crosses cell edges |
| interpolate_z_bilinear | fortplot_interpolation | Subroutine | Bilinear interpolation of Z value at world coordinates Refactored to be under 100 lines (QADS compliance) |
| ioff | fortplot_matplotlib_session | Subroutine | Disable interactive mode |
| ion | fortplot_matplotlib_session | Subroutine | Enable interactive mode for live terminal visualization |
| ipart | fortplot_raster_primitives | Function | Integer part of floating-point number |
| is_annotation_visible | fortplot_annotation_coordinates | Function | Check if annotation is visible within plot area |
| is_autopct_text | fortplot_ascii_utils | Function | |
| is_backend_associated | fortplot_figure_accessors | Function | Check if backend is allocated |
| is_date_scale | fortplot_axes_date | Function | |
| is_debug_enabled | fortplot_os_detection | Function | |
| is_empty_array | fortplot_coordinate_validation | Function | Check if arrays are empty |
| is_error | fortplot_errors | Function | Check if status code indicates an error |
| is_finite_safe | fortplot_parameter_validation | Function | |
| is_font_initialized | fortplot_text_fonts | Function | |
| is_greek_letter_codepoint | fortplot_unicode | Function | Check if codepoint is a Greek letter |
| is_interactive_environment | fortplot_figure_utilities | Function | Determine if we're running in an interactive environment Returns false for CI, batch, or piped environments |
| is_legend_entry_text | fortplot_ascii_utils | Function | |
| is_media_file | fortplot_doc_output | Function | |
| is_nan_safe | fortplot_parameter_validation | Function | |
| is_registered_legend_label | fortplot_ascii_utils | Function | |
| is_safe_filename | fortplot_animation_validation | Function | |
| is_supported_video_format | fortplot_animation_validation | Function | |
| is_unicode_char | fortplot_unicode | Function | Check if a character is Unicode (multi-byte) |
| is_valid_color | fortplot_color_parsing | Function | Check if color string is valid without full parsing |
| is_valid_greek_command | fortplot_latex_parser | Function | |
| is_valid_single_point | fortplot_coordinate_validation | Function | Check if arrays represent a valid single point |
| is_warning_tracking_active | fortplot_validation_context | Function | |
| is_warnings_suppressed | fortplot_logging | Function | Check if warnings are currently suppressed |
| is_windows | fortplot_os_detection | Function | |
| json_to_spec | fortplot_spec_json_parse | Subroutine | Parse a Vega-Lite JSON string into spec_t |
| julian_day_from_unix_seconds | fortplot_datetime | Function | |
| latex_to_unicode | fortplot_latex_parser | Subroutine | |
| launch_system_viewer | fortplot_system_viewer | Subroutine | Launch system viewer for file Uses xdg-open on Linux, open on macOS, start on Windows |
| legend | fortplot_matplotlib_axes | Subroutine | Display figure legend (matplotlib-compatible) |
| legend_box_styling_example | legend_demo | Subroutine | Demonstrate legend box styling and multiple entries |
| legend_render | fortplot_legend | Subroutine | Render legend - delegates to drawing module |
| list_directory_entries | fortplot_directory_listing | Subroutine | |
| load_font_system | fortplot_annotation_layout | Subroutine | Load font system from specified path |
| log_debug | fortplot_logging | Subroutine | Log a debug message |
| log_error | fortplot_errors | Subroutine | Log error message to error unit |
| log_error | fortplot_logging | Subroutine | Log an error message |
| log_info | fortplot_logging | Subroutine | Log an informational message |
| log_scale_demo | scale_examples | Subroutine | |
| log_warning | fortplot_logging | Subroutine | Log a warning message with suppression support Respects FORTPLOT_SUPPRESS_WARNINGS and CI environment detection |
| lowercase_string | fortplot_doc_utils | Function | |
| map_grid_index_to_coord | fortplot_streamplot_arrow_utils | Function | Convert matplotlib-style grid index to data coordinate |
| map_unix_to_windows_path | fortplot_path_operations | Function | Map Unix-style /tmp paths to Windows-compatible paths |
| map_value_to_plot_x | fortplot_raster_axes | Function | |
| map_value_to_plot_y | fortplot_raster_axes | Function | |
| max_player_line_length | fortplot_ascii_player | Function | |
| minorticks_on | fortplot_matplotlib_axes | Subroutine | Enable minor ticks on both axes (matplotlib-compatible) |
| mpl_default_config | fortplot_spec_config_defaults | Function | Return config_t matching matplotlib visual defaults. |
| multi_function_legend_example | legend_demo | Subroutine | Complex legend with multiple mathematical functions |
| multi_line_plot | basic_plots | Subroutine | |
| new_active_edge | fortplot_tt_scanline_fill | Function | |
| next_plot_color | fortplot_figure_plot_management | Function | |
| normalize_angle | fortplot_polar | Function | Normalize angle to [0, 2*pi) range |
| normalize_path_separators | fortplot_path_operations | Function | Normalize path separators for the target platform |
| normalize_test_path | fortplot_windows_test_helper | Function | Normalize path for cross-platform compatibility |
| normalize_to_pdf_coords | fortplot_pdf_coordinate | Subroutine | |
| only_pie_plots | fortplot_figure_aspect | Function | Check if every plot in the collection is a pie chart |
| open_ffmpeg_pipe | fortplot_pipe | Function | |
| open_with_default_app_runtime | fortplot_system_commands | Subroutine | |
| optional_logical | fortplot_matplotlib_scatter_utils | Function | |
| output_to_file | fortplot_ascii_rendering | Subroutine | |
| output_to_terminal | fortplot_ascii_rendering | Subroutine | |
| parse_autosize | fortplot_spec_config_parse | Subroutine | Parse autosize as a string or object (extracting type). |
| parse_axis | fortplot_spec_json_channels | Subroutine | Parse axis object |
| parse_boolean_env | fortplot_string_utils | Function | Case-insensitive parse for common boolean-ish strings. |
| parse_channel | fortplot_spec_json_channels | Subroutine | Parse a single encoding channel object |
| parse_color | fortplot_color_parsing | Subroutine | Parse matplotlib-compatible color string to RGB values [0,1] |
| parse_color_rgba | fortplot_color_parsing | Subroutine | Parse color string to RGBA values [0,1] including alpha channel |
| parse_colors_bulk | fortplot_color_parsing | Subroutine | Parse multiple colors efficiently |
| parse_config | fortplot_spec_config_parse | Subroutine | |
| parse_config_axis | fortplot_spec_config_axes | Subroutine | |
| parse_config_bar | fortplot_spec_config_axes | Subroutine | |
| parse_config_legend | fortplot_spec_config_styling | Subroutine | |
| parse_config_line | fortplot_spec_config_axes | Subroutine | |
| parse_config_point | fortplot_spec_config_axes | Subroutine | |
| parse_config_range | fortplot_spec_config_styling | Subroutine | Parse config.range object, extracting category colors. |
| parse_config_title | fortplot_spec_config_styling | Subroutine | |
| parse_config_view | fortplot_spec_config_axes | Subroutine | |
| parse_data | fortplot_spec_json_data | Subroutine | Parse data object: {"values": [{...}, ...]} |
| parse_domain | fortplot_spec_json_channels | Subroutine | Parse domain array [min, max] |
| parse_encoding | fortplot_spec_json_channels | Subroutine | Parse encoding object with named channels |
| parse_field_plot | fortplot_spec_json_data | Subroutine | |
| parse_format_string | fortplot_format_parser | Subroutine | |
| parse_frame_header | fortplot_ascii_player | Function | Recognize lines of the form "=== Frame |
| parse_layers | fortplot_spec_json_data | Subroutine | Parse layer array |
| parse_mark | fortplot_spec_json_channels | Subroutine | Parse mark: either a string or an object |
| parse_mathtext | fortplot_mathtext | Function | Parse mathematical text into renderable elements |
| parse_one_layer | fortplot_spec_json_data | Subroutine | Parse a single layer object |
| parse_padding | fortplot_spec_config_parse | Subroutine | Parse padding as integer object or single integer. |
| parse_path_segments | fortplot_path_operations | Subroutine | Parse a path into directory segments |
| parse_real_array | fortplot_spec_json_channels | Subroutine | |
| parse_row | fortplot_spec_json_data | Subroutine | Parse one row object and store values into data columns |
| parse_scale | fortplot_spec_json_channels | Subroutine | Parse scale object |
| parse_supported_domain | fortplot_spec_json_channels | Subroutine | Parse only numeric domains and skip categorical domains. |
| parse_values_array | fortplot_spec_json_data | Subroutine | Parse row-oriented data: [{"x":1,"y":2}, ...] Two-pass: first count rows and discover columns, then parse values. |
| pause | fortplot_matplotlib_session | Subroutine | Draw the current figure and pause for specified duration |
| pcolormesh | fortplot_matplotlib_mesh_wrappers | Subroutine | Draw a pseudocolor mesh (matplotlib-compatible) |
| pdf_extract_rgb_data | fortplot_pdf_coordinate | Subroutine | |
| pdf_get_height_scale | fortplot_pdf_coordinate | Function | Get height scale in drawing units per data unit. |
| pdf_get_png_data | fortplot_pdf_coordinate | Subroutine | |
| pdf_get_width_scale | fortplot_pdf_coordinate | Function | Get width scale in drawing units per data unit. |
| pdf_next_token | fortplot_test_pdf_tokenizer | Subroutine | |
| pdf_prepare_3d_data | fortplot_pdf_coordinate | Subroutine | |
| pdf_render_ylabel | fortplot_pdf_coordinate | Subroutine | |
| pdf_set_marker_colors | fortplot_pdf_markers | Subroutine | |
| pdf_set_marker_colors_with_alpha | fortplot_pdf_markers | Subroutine | |
| pdf_stream_count_operator | fortplot_test_pdf_tokenizer | Function | |
| pdf_stream_has_stroke_rgb | fortplot_test_pdf_tokenizer | Function | |
| pick_fixed_step_seconds | fortplot_axes_date | Function | |
| pie | fortplot_matplotlib_plots | Subroutine | Create a pie chart |
| play_ascii_animation | fortplot_ascii_player | Subroutine | Open a .txt animation and play frames at options%fps. |
| plot | fortplot_matplotlib_plot_wrappers | Subroutine | |
| png_validation_available | fortplot_png_validation | Function | Internal validation is always available. |
| polar | fortplot_matplotlib_plots | Interface | |
| polar_to_cartesian | fortplot_polar | Subroutine | Convert single polar coordinate to Cartesian theta: angle in radians r: radius theta_offset: angular offset (default: 0, 0 at east) clockwise: if true, angles increase clockwise |
| polar_to_cartesian_arrays | fortplot_polar | Subroutine | Convert arrays of polar coordinates to Cartesian |
| positioned_legend_example | legend_demo | Subroutine | Demonstrate different legend positions |
| prepare_ascii_3d_data | fortplot_ascii_backend_support | Subroutine | Prepare 3D data for ASCII backend (no-op - ASCII doesn't use 3D data) |
| prepare_colorbar_layout | fortplot_figure_colorbar | Subroutine | |
| prepare_mathtext_if_needed | fortplot_text_helpers | Subroutine | Return trimmed text and leave math parsing decisions to explicit $...$ delimiters. |
| prepare_text_for_raster | fortplot_text_helpers | Subroutine | Run the full latex -> mathtext -> unicode pipeline for raster output. |
| preprocess_math_text | fortplot_text_layout | Subroutine | Remove '$' delimiters and escape '^'/'_' outside math so they render literally UTF-8 aware: multi-byte characters are copied as intact sequences |
| print_centered_title | fortplot_ascii_utils | Subroutine | Print centered title to terminal with Unicode-to-ASCII conversion |
| process_bar_plot_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process bar plot data to calculate axis ranges |
| process_boxplot_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process box plot data to calculate ranges |
| process_contour_plot_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process contour plot data to calculate ranges |
| process_errorbar_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process errorbar plot data to calculate ranges including error extents |
| process_example | fortplot_doc_processing | Subroutine | |
| process_fill_between_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process fill_between data to calculate ranges |
| process_latex_in_text | fortplot_latex_parser | Subroutine | Convert LaTeX-style commands to Unicode while preserving math scopes UTF-8 aware: multi-byte characters are copied as intact sequences |
| process_line_plot_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process line plot data to calculate ranges |
| process_pcolormesh_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process pcolormesh plot data to calculate ranges |
| process_pie_ranges | fortplot_figure_data_ranges_specialized | Subroutine | Process pie chart slices to compute axis ranges |
| process_rotated_text_segments | fortplot_pdf_text_segments | Subroutine | Process text segments for rotated mixed font rendering |
| process_text_segments | fortplot_pdf_text_segments | Subroutine | Process text segments for mixed font rendering Groups consecutive glyphs for the same font into a single Tj to avoid odd intra-word spacing in some PDF viewers. |
| project_3d_to_2d | fortplot_projection | Subroutine | Project 3D coordinates to 2D using orthographic projection |
| pt2px | fortplot_raster_core | Function | Convert points (1/72 inch) to pixels at given DPI. |
| quiver | fortplot_matplotlib_vector_wrappers | Interface | |
| quiver_basic_validation | fortplot_figure_quiver | Function | Validate quiver input arrays have matching dimensions |
| quiver_figure | fortplot_figure_quiver | Subroutine | Add quiver plot to figure Creates discrete vector arrows at (x,y) positions with (u,v) directions |
| raster_calculate_legend_dimensions | fortplot_raster_rendering | Subroutine | Calculate legend dimensions for PNG using real text metrics (pixels) |
| raster_calculate_legend_position | fortplot_raster_rendering | Subroutine | Calculate standard legend position for PNG using plot coordinates |
| raster_draw_axes_and_labels | fortplot_raster_axes | Subroutine | |
| raster_draw_axes_lines_and_ticks | fortplot_raster_axes | Subroutine | |
| raster_draw_axis_labels | fortplot_raster_labels | Subroutine | Draw all axis labels (title, xlabel, ylabel) |
| raster_draw_axis_labels_only | fortplot_raster_axes | Subroutine | |
| raster_draw_axis_labels_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_secondary_x_axis_top | fortplot_raster_axes_secondary | Subroutine | |
| raster_draw_secondary_y_axis | fortplot_raster_axes_secondary | Subroutine | |
| raster_draw_top_xlabel | fortplot_raster_labels | Subroutine | Render an xlabel centered above the plot area |
| raster_draw_x_axis_tick_labels_only | fortplot_raster_ticks | Subroutine | |
| raster_draw_x_axis_tick_labels_only_custom | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_x_axis_tick_labels_only_top | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_x_axis_tick_labels_only_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_x_axis_tick_marks_only | fortplot_raster_ticks | Subroutine | |
| raster_draw_x_axis_tick_marks_only_top | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_x_axis_tick_marks_only_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_x_axis_ticks | fortplot_raster_ticks | Subroutine | |
| raster_draw_x_axis_ticks_top | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_x_axis_ticks_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_x_minor_ticks | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_y_axis_tick_labels_only | fortplot_raster_ticks | Subroutine | |
| raster_draw_y_axis_tick_labels_only_custom | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_y_axis_tick_labels_only_right | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_y_axis_tick_labels_only_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_y_axis_tick_marks_only | fortplot_raster_ticks | Subroutine | |
| raster_draw_y_axis_tick_marks_only_right | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_y_axis_tick_marks_only_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_y_axis_ticks | fortplot_raster_ticks | Subroutine | |
| raster_draw_y_axis_ticks_right | fortplot_raster_ticks_secondary | Subroutine | |
| raster_draw_y_axis_ticks_wrapper | fortplot_raster_axes_custom | Subroutine | |
| raster_draw_y_minor_ticks | fortplot_raster_ticks_secondary | Subroutine | |
| raster_extract_rgb_data | fortplot_raster_rendering | Subroutine | Extract RGB data from PNG backend |
| raster_fill_heatmap | fortplot_raster_rendering | Subroutine | Fill contour plot using scanline method for pixel-by-pixel rendering |
| raster_fill_quad | fortplot_raster_rendering | Subroutine | Fill quadrilateral with current color |
| raster_get_png_data | fortplot_raster_rendering | Subroutine | Raster context doesn't generate PNG data - only PNG context does |
| raster_render_legend_specialized | fortplot_raster_rendering | Subroutine | Render legend using standard algorithm for PNG |
| raster_render_ylabel | fortplot_raster_labels | Subroutine | Render rotated ylabel to the left of y-axis |
| raster_render_ylabel_right | fortplot_raster_labels | Subroutine | Render rotated ylabel along the right side of the axis |
| raster_set_legend_border_width | fortplot_raster_rendering | Subroutine | Set thin border width for PNG legend |
| read_bool | fortplot_spec_json_reader | Subroutine | Read a JSON boolean (true/false) |
| read_file | fortplot_spec_json_reader | Subroutine | Read entire file into a single string |
| read_int | fortplot_spec_json_reader | Subroutine | Read a JSON integer |
| read_literal | fortplot_spec_json_reader | Subroutine | Read an arbitrary JSON value as a literal string. For strings returns the quoted content; for numbers, booleans, null returns the raw text. |
| read_real | fortplot_spec_json_reader | Subroutine | Read a JSON number as real(wp). Recognises JSON null and maps it to IEEE NaN. |
| read_stdin | fortplot_spec_json_reader | Subroutine | Read entire stdin into a single string |
| read_string | fortplot_spec_json_reader | Subroutine | Read a JSON quoted string, advancing pos past closing quote. Unescapes standard JSON escape sequences. |
| redraw_current_frame | probability_animation_demo | Subroutine | |
| regenerate_pie_legend_for_backend | fortplot_figure_render_steps | Subroutine | |
| register_legend_entry_helper | fortplot_ascii_legend | Interface | |
| register_line_plot_data | fortplot_figure_plot_management | Subroutine | |
| register_pcolormesh_plot_data | fortplot_figure_grid_plot_registration | Subroutine | |
| remove_trailing_zeros | fortplot_tick_formatting | Subroutine | Remove trailing zeros from decimal representation |
| render_all_plots | fortplot_figure_plot_dispatch | Subroutine | Render all plots in the figure |
| render_ascii_axes | fortplot_ascii_backend_support | Subroutine | Render axes for ASCII context (stub implementation) |
| render_ascii_legend | fortplot_legend_drawing | Subroutine | Render compact ASCII legend with proper formatting |
| render_ascii_legend_specialized | fortplot_ascii_legend | Interface | |
| render_ascii_ylabel | fortplot_ascii_backend_support | Subroutine | Render Y-axis label for ASCII backend (no-op - handled elsewhere) |
| render_axes_and_plots | fortplot_figure_render_steps | Subroutine | |
| render_background_and_grid | fortplot_figure_render_steps | Subroutine | |
| render_bar_plot | fortplot_bar_rendering | Subroutine | Render bar plots (vertical or horizontal) for the active backend |
| render_boxplot_plot | fortplot_boxplot_rendering | Subroutine | Render a single box plot (vertical or horizontal) |
| render_colorbar | fortplot_figure_colorbar | Subroutine | |
| render_colorbar_with_state | fortplot_figure_render_steps | Subroutine | |
| render_contour_plot | fortplot_contour_rendering | Subroutine | Render a contour plot |
| render_decorations | fortplot_figure_render_steps | Subroutine | |
| render_errorbar_plot | fortplot_errorbar_rendering | Subroutine | Render error bars for a plot |
| render_field_plot_to_state | fortplot_spec_field_rendering | Subroutine | |
| render_figure_annotations | fortplot_annotation_rendering | Subroutine | Render all annotations for the current figure |
| render_figure_axes | fortplot_figure_rendering_pipeline | Subroutine | Render figure axes and labels For raster backends, split rendering to prevent label overlap issues |
| render_figure_axes_labels_only | fortplot_figure_rendering_pipeline | Subroutine | Render ONLY axis labels (for raster and PDF backends after plots are drawn) |
| render_figure_background | fortplot_figure_rendering_pipeline | Subroutine | Render figure background |
| render_figure_components | fortplot_animation_rendering | Subroutine | |
| render_figure_impl | fortplot_figure_core_io | Subroutine | Main rendering pipeline implementation Fixed Issue #432: Always render axes/labels even with no plot data Fixed Issue #844: ASCII annotation functionality |
| render_fill_between_plot | fortplot_mesh_rendering | Subroutine | Render fill_between polygons as trapezoids |
| render_frame_to_png | fortplot_animation_rendering | Subroutine | |
| render_grid_lines | fortplot_figure_grid | Subroutine | Render grid lines on the figure |
| render_labels_overlay | fortplot_figure_render_steps | Subroutine | |
| render_line_plot | fortplot_line_rendering | Subroutine | Render a line plot with proper scaling and clipping |
| render_markers | fortplot_marker_rendering | Subroutine | Render markers for a plot |
| render_mathtext_element_pdf | fortplot_pdf_mathtext_render | Subroutine | Render a single mathematical text element in PDF |
| render_mixed_font_at_position | fortplot_pdf_text_segments | Subroutine | Render text with mixed fonts at specific position and size |
| render_mixed_text | fortplot_pdf_axes_text | Subroutine | Process LaTeX and render mixed-font text with mathtext support. |
| render_pcolormesh_plot | fortplot_mesh_rendering | Subroutine | Render a pcolormesh plot |
| render_pie_plot | fortplot_pie_rendering | Subroutine | Render pie slices using triangle fans per wedge |
| render_polar_angular_gridlines | fortplot_polar_rendering | Subroutine | Render angular gridlines (concentric circles) |
| render_polar_angular_ticks | fortplot_polar_rendering | Subroutine | Render angular tick labels around the polar plot boundary |
| render_polar_axes | fortplot_figure_plot_renderers | Subroutine | Render polar axes: circular boundary, radial spokes, angular circles, tick labels |
| render_polar_axes | fortplot_polar_rendering_helpers | Subroutine | Render polar axes: circular boundary, radial spokes, angular circles, tick labels |
| render_polar_boundary | fortplot_polar_rendering | Subroutine | Render circular boundary for polar plot |
| render_polar_data | fortplot_polar_rendering | Subroutine | Render polar data as connected line segments |
| render_polar_examples | polar_demo | Subroutine | |
| render_polar_plot_internal | fortplot_figure_plot_renderers | Subroutine | Render polar plot data within the coordinate system The plot stores pre-converted Cartesian coordinates in x/y arrays but we use polar_theta/polar_r for proper polar rendering |
| render_polar_plot_internal | fortplot_polar_rendering_helpers | Subroutine | Render polar plot data within the coordinate system The plot stores pre-converted Cartesian coordinates in x/y arrays but we use polar_theta/polar_r for proper polar rendering |
| render_polar_radial_gridlines | fortplot_polar_rendering | Subroutine | Render radial gridlines (spokes) from center to boundary |
| render_quiver_plot | fortplot_figure_plot_renderers | Subroutine | Render quiver plot (discrete vector arrows) Draws arrows at each (x,y) position with direction (u,v) Respects angles, pivot, alpha, and per-arrow c(:) color mapping. |
| render_refline_plot | fortplot_vector_plot_helpers | Subroutine | Render a reference line (horizontal or vertical) Reference lines store normalized coordinates for axis-spanning lines or actual data coordinates for hlines/vlines |
| render_refline_plot | fortplot_figure_plot_renderers | Subroutine | Render a reference line (horizontal or vertical) Reference lines store normalized coordinates for axis-spanning lines or actual data coordinates for hlines/vlines |
| render_rotated_mixed_text | fortplot_pdf_axes_text | Subroutine | Process LaTeX and render rotated mixed-font ylabel with mathtext support. |
| render_rotated_text_to_image | fortplot_raster_text_rendering | Subroutine | Render rotated text to PNG image using STB TrueType with UTF-8 support |
| render_solid_line | fortplot_line_rendering | Subroutine | Render a solid line connecting all points |
| render_spec_to_file | fortplot_spec_rendering | Subroutine | |
| render_standard_legend | fortplot_legend_drawing | Subroutine | Render standard legend for PNG/PDF backends with improved sizing |
| render_streamplot_arrows | fortplot_vector_plot_helpers | Subroutine | Render queued streamplot arrows after plot lines are drawn |
| render_streamplot_arrows | fortplot_figure_plot_renderers | Subroutine | Render queued streamplot arrows after plot lines are drawn |
| render_subplots | fortplot_subplot_rendering | Subroutine | |
| render_surface_plot | fortplot_surface_rendering | Subroutine | Render a 3D surface plot using wireframe or filled representation |
| render_text_elements_to_canvas | fortplot_ascii_utils | Subroutine | Render stored text elements onto the ASCII canvas with Unicode-to-ASCII conversion |
| render_text_to_bitmap | fortplot_bitmap | Subroutine | Render text to RGB bitmap by using existing PNG rendering then converting |
| render_text_to_bitmap_with_size | fortplot_bitmap | Subroutine | Render text to an RGB bitmap using a given font size (pixel_height). |
| render_text_to_image | fortplot_raster_text_rendering | Subroutine | Render text to image using STB TrueType with UTF-8 support Supports mathematical notation with superscripts and subscripts |
| render_text_with_size | fortplot_raster_text_rendering | Subroutine | Render text with specific font size Supports mathematical notation with superscripts and subscripts |
| render_title_centered | fortplot_raster_labels | Subroutine | Render title centered above the plot area |
| render_title_centered_with_size | fortplot_raster_labels | Subroutine | Render title centered at specified position with custom font scale Used for suptitle rendering above subplots |
| render_title_only | fortplot_figure_rendering_pipeline | Subroutine | Render only the figure title without drawing axes |
| render_twin_labels | fortplot_twin_axes_rendering | Subroutine | Render labels for all backend types (raster, PDF, ASCII) |
| replace_extension | fortplot_doc_utils | Function | |
| replace_stream_arrows | fortplot_streamplot_arrow_utils | Subroutine | Replace figure state stream arrows and manage rendered flag |
| report_status | three_d_animation_demo | Subroutine | |
| reset_ascii_legend_lines_helper | fortplot_ascii_legend | Interface | |
| reset_figure_state | fortplot_figure_initialization | Subroutine | Reset figure state to initial values |
| reset_pattern_distance | fortplot_raster_line_styles | Subroutine | Reset pattern distance to start of pattern |
| reset_warning_tracking | fortplot_validation_context | Subroutine | |
| resolve_cmap_alias | fortplot_matplotlib_mesh_wrappers | Subroutine | Resolve matplotlib-canonical cmap against legacy colormap alias |
| resolve_color_string_or_rgb | fortplot_matplotlib_color_utils | Subroutine | Merge string/RGB color inputs into a single RGB triple. |
| resolve_colorbar_mappable | fortplot_figure_colorbar | Subroutine | |
| resolve_plot_colorbar_request | fortplot_figure_render_steps | Subroutine | |
| resolve_sequence_to_rgb | fortplot_matplotlib_color_utils | Subroutine | Parse an array of color strings into a 3xN RGB matrix. |
| resolve_tick_font_px | fortplot_raster_ticks | Function | |
| rfpart | fortplot_raster_primitives | Function | Reverse fractional part (1 - fractional part) |
| rgb_to_hsv | fortplot_color_conversions | Subroutine | Convert RGB to HSV color space |
| rgb_to_lab | fortplot_color_conversions | Subroutine | Convert RGB to LAB color space (simplified implementation) |
| rotate_bitmap_90_ccw | fortplot_bitmap | Subroutine | Rotate bitmap 90 degrees counter-clockwise For arrays: (i,j) maps to (height-j+1, i) with swapped dimensions |
| rotate_bitmap_90_cw | fortplot_bitmap | Subroutine | Rotate bitmap 90 degrees clockwise For arrays: (i,j) maps to (j, width-i+1) with swapped dimensions |
| rotate_bitmap_about_anchor | fortplot_bitmap | Subroutine | Rotate an RGB bitmap around an anchor point, returning the rotated bitmap and the anchor location in the destination bitmap. |
| rotate_curve | three_d_animation_demo | Subroutine | |
| safe_coordinate_transform | fortplot_pdf_coordinate | Subroutine | Safe coordinate transformation using independent x/y scales |
| sanitize_ascii_text | fortplot_ascii_mathtext | Subroutine | Produce an ASCII-safe version of |
| save_animation | fortplot_animation | Subroutine | |
| save_animation_full | fortplot_animation_pipeline | Subroutine | |
| save_animation_with_error_handling | save_animation_demo | Subroutine | |
| save_animation_with_pipeline | fortplot_animation_pipeline | Subroutine | |
| save_ascii_with_status | fortplot_figure_io | Subroutine | Save ASCII file with status reporting |
| save_backend_with_status | fortplot_figure_io | Subroutine | Save the figure with appropriate backend based on file extension |
| save_pdf_with_status | fortplot_figure_io | Subroutine | Save PDF file with status reporting |
| save_png_with_status | fortplot_figure_io | Subroutine | Save PNG file with status reporting |
| save_svg_with_status | fortplot_figure_io | Subroutine | Save SVG file with status reporting |
| savefig | fortplot_matplotlib_session | Subroutine | Save current figure using matplotlib-compatible API. |
| savefig_figure | fortplot_figure_core_io | Subroutine | Save figure to file (backward compatibility version) |
| savefig_with_status | fortplot_matplotlib_session | Subroutine | Save figure and return status code for testing scenarios.
Applies |
| savefig_with_status_figure | fortplot_figure_core_io | Subroutine | Save figure to file with error status reporting Added Issue #854: File path validation for user input safety |
| scale_px | fortplot_raster_core | Function | Scale a pixel value from reference DPI (100) to target DPI. At REFERENCE_DPI the value is unchanged. |
| scan_directory_for_media | fortplot_doc_output | Subroutine | |
| scan_row_fields | fortplot_spec_json_data | Subroutine | Scan one row object to discover field names and types. Advances pos past the entire row object. |
| scatter | fortplot_matplotlib_scatter | Interface | |
| scatter_2d_dispatch | fortplot_matplotlib_scatter_dispatch | Subroutine | |
| scatter_3d_dispatch | fortplot_matplotlib_scatter_dispatch | Subroutine | |
| scatter_3d_string_dispatch | fortplot_matplotlib_scatter_dispatch | Subroutine | |
| select_font_family | fortplot_annotation_layout | Subroutine | Select font family with fallback mechanism |
| serialize_config | fortplot_spec_config_json | Function | |
| serialize_field_plot | fortplot_spec_json_field_plot | Function | |
| serialize_padding | fortplot_spec_config_json | Function | |
| set_ascii_legend_border_width | fortplot_ascii_legend | Interface | |
| set_backend_color | fortplot_figure_accessors | Subroutine | Set backend color |
| set_figure_labels | fortplot_figure_configuration | Subroutine | Set figure labels |
| set_figure_limits | fortplot_figure_configuration | Subroutine | Set axis limits |
| set_figure_rendered | fortplot_figure_accessors | Subroutine | Set rendered state |
| set_figure_scales | fortplot_figure_configuration | Subroutine | Set axis scale types |
| set_legend_position_from_orient | fortplot_spec_config_apply | Subroutine | Single source of truth for orient string -> position int. |
| set_line_plot_properties | fortplot_2d_plots | Subroutine | Set line plot properties (style, color, etc.) Extracted from add_line_plot_data for QADS compliance |
| set_line_width | fortplot_matplotlib_axes | Subroutine | Set the default line width for subsequent plots. |
| set_line_width_figure | fortplot_figure_core_config | Subroutine | Set line width for subsequent plots |
| set_log_level | fortplot_logging | Subroutine | Set the global logging level with input validation |
| set_preferred_font | fortplot_text_fonts | Subroutine | Set preferred font and reinitialize if needed. Call before rendering to switch fonts for a style mode. |
| set_raster_line_style | fortplot_raster_line_styles | Subroutine | Set line style pattern for raster |
| set_rendered_figure | fortplot_figure_core_io_figure | Subroutine | Set rendered state |
| set_subplot_title | fortplot_figure_subplots | Subroutine | Set the title for a specific subplot |
| set_subplot_xlabel | fortplot_figure_subplots | Subroutine | Set the x-axis label for a specific subplot |
| set_subplot_ylabel | fortplot_figure_subplots | Subroutine | Set the y-axis label for a specific subplot |
| set_title_figure | fortplot_figure_core_config | Subroutine | Set figure title |
| set_xaxis_date_format_figure | fortplot_figure_core_config | Subroutine | |
| set_xlabel_figure | fortplot_figure_core_config | Subroutine | Set x-axis label |
| set_xlim_figure | fortplot_figure_core_config | Subroutine | Set x-axis limits |
| set_xscale | fortplot_matplotlib_axes | Subroutine | Set x-axis scale (matplotlib-compatible) |
| set_xscale_figure | fortplot_figure_core_config | Subroutine | Set x-axis scale type |
| set_xticks | fortplot_matplotlib_axes | Subroutine | Set custom x-axis tick positions and optionally labels |
| set_yaxis_date_format_figure | fortplot_figure_core_config | Subroutine | |
| set_ydata | fortplot_matplotlib_axes | Subroutine | Replace the y-data of the first plot line. |
| set_ylabel_figure | fortplot_figure_core_config | Subroutine | Set y-axis label |
| set_ylim_figure | fortplot_figure_core_config | Subroutine | Set y-axis limits |
| set_yscale | fortplot_matplotlib_axes | Subroutine | Set y-axis scale (matplotlib-compatible); see set_xscale for kwargs |
| set_yscale_figure | fortplot_figure_core_config | Subroutine | Set y-axis scale type |
| set_yticks | fortplot_matplotlib_axes | Subroutine | Set custom y-axis tick positions and optionally labels |
| setup_axes_data_ranges | fortplot_pdf_axes | Subroutine | Set up data ranges for axes with optional log scaling |
| setup_canvas | fortplot_context | Subroutine | |
| setup_coordinate_system | fortplot_figure_rendering_pipeline | Subroutine | Setup the coordinate system for rendering Adds a small margin to data ranges to prevent boundary data from being clipped by the plot frame stroke. |
| setup_figure_backend | fortplot_figure_configuration | Subroutine | Setup or change the figure backend |
| setup_figure_legend | fortplot_figure_legend_setup | Subroutine | |
| setup_figure_png_backend_for_animation | fortplot_figure_animation | Subroutine | Setup PNG backend for animation (temporary method) |
| setup_png_backend_for_animation_figure | fortplot_figure_core_io_figure | Subroutine | Setup PNG backend for animation (temporary method) |
| setup_png_for_animation | fortplot_figure_accessors | Subroutine | Setup PNG backend for animation |
| setup_streamplot_parameters | fortplot_streamplot_core | Subroutine | Setup and validate streamplot parameters (validation logic only) |
| setup_twin_axes_state | fortplot_twin_axes_rendering | Subroutine | Setup local state for twin axes configuration |
| should_draw_at_distance | fortplot_line_styles | Function | Determine if line should be drawn at given distance in pattern Following SRP - handles only pattern position logic |
| show | fortplot_matplotlib_advanced | Interface | |
| show_data | fortplot_matplotlib_session | Subroutine | Convenience routine mirroring matplotlib.pyplot.show signature with data |
| show_figure | fortplot_matplotlib_session | Subroutine | Show the global figure via backend implementation |
| show_figure | fortplot_figure_core_io | Subroutine | Display the figure |
| show_spec | fortplot_spec_rendering | Subroutine | |
| show_viewer | fortplot_matplotlib_session | Subroutine | Launch external viewer with saved figure artifact when available |
| simple_plots | basic_plots | Subroutine | |
| skip_test_on_windows_ci | fortplot_windows_test_helper | Function | Check if test should be skipped on Windows CI |
| skip_value | fortplot_spec_json_reader | Subroutine | Skip an arbitrary JSON value (string, number, bool, null, object, or array) without storing it. |
| skip_ws | fortplot_spec_json_reader | Subroutine | Skip whitespace characters |
| smooth_contour_chain | fortplot_contour_algorithms | Subroutine | Smooth a polyline using Catmull-Rom spline interpolation |
| sort_array | fortplot_utils_sort | Subroutine | Simple bubble sort for small arrays (sufficient for boxplot quartiles) |
| sort_edges | fortplot_tt_edge_sort | Subroutine | Sort edges by y0 ascending. Quicksort + insertion sort. |
| sort_edges_ins_sort | fortplot_tt_edge_sort | Subroutine | |
| sort_edges_quicksort | fortplot_tt_edge_sort | Subroutine | |
| sort_media_groups | fortplot_doc_output | Subroutine | |
| sort_string_array | fortplot_doc_output | Subroutine | |
| spec_savefig | fortplot_spec_builder | Subroutine | |
| spec_target_is_json | fortplot_spec_rendering | Function | |
| spec_to_json | fortplot_spec_json | Function | Serialize spec_t to a Vega-Lite JSON string |
| spec_to_json_file | fortplot_spec_json | Subroutine | Write spec_t as Vega-Lite JSON to a file |
| stem | fortplot_matplotlib_plots | Subroutine | Create a stem plot |
| step | fortplot_matplotlib_plots | Interface | |
| store_scatter_style_arrays | fortplot_matplotlib_scatter_utils | Subroutine | |
| store_text_element | fortplot_ascii_text_elements | Subroutine | Store a pre-processed text element for later ASCII rendering |
| stream_pos0 | fortplot_pdf_stream | Function | Get current 0-based byte offset in a stream file. |
| streamplot | fortplot_matplotlib_vector_wrappers | Subroutine | Stateful streamplot wrapper - delegates to OO interface |
| streamplot_basic_validation | fortplot_figure_streamlines | Function | Basic validation for streamplot inputs |
| streamplot_figure | fortplot_figure_streamlines | Subroutine | Add streamline plot to figure - direct streamline generation Streamplot draws arrowheads along streamlines (not full trajectory lines). Arrow rendering happens in render_axes_and_plots after all plots. |
| streamplot_impl | fortplot_plotting_advanced | Subroutine | Add streamlines for vector field |
| streamplot_matplotlib | fortplot_streamplot_matplotlib | Subroutine | Matplotlib-compatible streamplot implementation Based on matplotlib streamplot.py (not a line-for-line port) |
| subplot | fortplot_matplotlib_session | Subroutine | Select a subplot in an nrows-by-ncols grid (matplotlib-compatible) |
| subplots | fortplot_matplotlib_session | Subroutine | Initialize an nrows-by-ncols subplot grid (matplotlib-compatible) |
| subplots_grid | fortplot_matplotlib_session | Function | Create subplot grid and return axis indices in row-major order |
| subsample_ticks | fortplot_pdf_axes_tick_data | Subroutine | Subsample ticks in transformed coordinate space for proportional visual spacing. |
| suggest_marker_for_single_point | fortplot_coordinate_validation | Function | Suggest appropriate marker type for single point based on backend |
| suptitle | fortplot_matplotlib_axes | Subroutine | Set a centered figure-level title above all subplots |
| svg_add_to_stream | fortplot_svg_draw | Subroutine | |
| svg_calc_legend_dims_impl | fortplot_svg_legend | Subroutine | |
| svg_calc_legend_pos_impl | fortplot_svg_legend | Subroutine | |
| svg_draw_arrow_impl | fortplot_svg_draw | Subroutine | |
| svg_draw_axes_labels_impl | fortplot_svg_axes | Subroutine | |
| svg_draw_line_impl | fortplot_svg_draw | Subroutine | |
| svg_draw_marker_impl | fortplot_svg_markers | Subroutine | |
| svg_fill_heatmap_impl | fortplot_svg_draw | Subroutine | |
| svg_fill_quad_impl | fortplot_svg_draw | Subroutine | |
| svg_render_legend_impl | fortplot_svg_legend | Subroutine | |
| svg_render_ylabel_impl | fortplot_svg_axes | Subroutine | |
| svg_set_legend_border_impl | fortplot_svg_legend | Subroutine | |
| svg_write_file_impl | fortplot_svg_draw | Subroutine | |
| switch_to_helvetica_font | fortplot_pdf_text_segments | Subroutine | |
| switch_to_symbol_font | fortplot_pdf_text_segments | Subroutine | |
| symlog_scale_demo | scale_examples | Subroutine | |
| test_cleanup_all | fortplot_test_helpers | Subroutine | Clean up all registered files and the test directory. |
| test_cleanup_file | fortplot_test_helpers | Subroutine | Clean up a specific test file |
| test_get_temp_path | fortplot_test_helpers | Function | Get a temporary file path for a test artifact. |
| test_get_unique_suffix | fortplot_test_helpers | Function | Generate reliable unique suffix combining multiple entropy sources |
| test_initialize_environment | fortplot_test_helpers | Subroutine | Initialize test environment with specific name |
| test_initialize_figure | fortplot_test_helpers | Subroutine | Initialize figure for testing (ensures temp directory exists) |
| test_register_file | fortplot_test_helpers | Subroutine | Register a file for automatic cleanup |
| test_savefig | fortplot_test_helpers | Subroutine | Save figure to temporary directory with automatic registration |
| text | fortplot_text_stub | Subroutine | Add text annotation to the current figure |
| tight_layout | fortplot_matplotlib_axes | Subroutine | Automatically adjust subplot parameters to give specified padding |
| title | fortplot_matplotlib_axes | Subroutine | Set the title for the current axes. Routes to subplot or figure level. |
| title_case | fortplot_doc_utils | Function | |
| to_lowercase | fortplot_string_utils | Function | Convert string to lowercase (ASCII A-Z) |
| to_lowercase | fortplot_color_definitions | Subroutine | Convert string to lowercase in-place |
| to_lowercase_char | fortplot_color_definitions | Subroutine | Convert single character to lowercase |
| trace_contour_level | fortplot_contour_tracing | Subroutine | Trace a single contour level with smoothing |
| transform_annotation_coordinates | fortplot_annotation_coordinates | Interface | |
| transform_annotation_coordinates_log | fortplot_annotation_coordinates | Subroutine | Transform annotation coordinates with logarithmic scaling support |
| transform_x_coordinate | fortplot_scales | Function | Transform data x-coordinate to screen coordinate |
| transform_y_coordinate | fortplot_scales | Function | Transform data y-coordinate to screen coordinate |
| try_system_mkdir | fortplot_system_commands | Subroutine | |
| tt_byte | fortplot_tt_binary | Function | Read one unsigned byte (0..255) at a 0-based offset. |
| tt_find_glyph_index | fortplot_tt_cmap | Function | Look up the glyph index for a Unicode codepoint in a cmap subtable. Returns 0 when the codepoint is not covered by the subtable. |
| tt_find_table | fortplot_tt_tables | Function | Find a table by its 4-byte tag in the table directory. Returns the table byte offset, or 0 if not found. |
| tt_flatten_curves | fortplot_tt_curves | Subroutine | Convert glyph vertex array to flattened point arrays with contour info. Uses a two-pass algorithm: pass 1 counts points, pass 2 fills them. Port of stbtt_FlattenCurves (stb_truetype.h lines 3618-3693). |
| tt_get_font_offset_for_index | fortplot_tt_tables | Function | Get font byte offset for a given index in a TTC collection. For a standalone font, index 0 returns 0. Returns -1 if the index is out of range or data is invalid. |
| tt_get_font_vmetrics | fortplot_tt_metrics | Subroutine | Read vertical font metrics (unscaled) from the hhea table. |
| tt_get_glyf_offset | fortplot_tt_metrics | Function | Get byte offset to a glyph in the glyf table. Returns -1 for empty glyphs or invalid indices. |
| tt_get_glyph_bitmap_box | fortplot_tt_metrics | Subroutine | Get bitmap bounding box in pixel coordinates (y-flipped). |
| tt_get_glyph_box | fortplot_tt_metrics | Subroutine | Get bounding box of a glyph in unscaled font coordinates. |
| tt_get_glyph_hmetrics | fortplot_tt_metrics | Subroutine | Read horizontal metrics for a glyph (unscaled) from the hmtx table. Glyphs beyond numOfLongHorMetrics share the last advance width. |
| tt_get_glyph_shape | fortplot_tt_outlines | Subroutine | Extract glyph outline as an array of move/line/curve vertices. Handles simple glyphs (numberOfContours > 0) and composite glyphs (numberOfContours < 0) with recursive component resolution. |
| tt_init_font_tables | fortplot_tt_tables | Subroutine | Initialize a TrueType font by locating all required tables and the cmap encoding subtable. Sets success=.false. if required tables are missing, no glyf table is present (CFF not supported), or no usable cmap encoding is found. |
| tt_is_font | fortplot_tt_tables | Function | Check if data at offset contains a valid TrueType/OpenType signature. Recognizes: 00-01-00-00 (standard), "true", "typ1", "OTTO". |
| tt_load_file | fortplot_tt_binary | Function | Load entire file into a byte array via stream I/O. |
| tt_rasterize | fortplot_tt_rasterizer | Subroutine | Rasterize tessellated glyph outlines into an 8-bit bitmap. |
| tt_scale_for_pixel_height | fortplot_tt_metrics | Function | Compute scale factor to achieve a desired pixel height. Uses ascent - descent from the hhea table. |
| tt_set_vertex | fortplot_tt_outlines | Function | Construct a vertex with the given type and coordinates. |
| tt_short | fortplot_tt_binary | Function | Read big-endian signed 16-bit integer (-32768..32767). |
| tt_tag_match | fortplot_tt_binary | Function | Compare 4 bytes at offset to a character tag (e.g. "cmap", "head"). |
| tt_ulong | fortplot_tt_binary | Function | Read big-endian unsigned 32-bit integer via bit operations. |
| tt_ushort | fortplot_tt_binary | Function | Read big-endian unsigned 16-bit integer (0..65535). |
| twinx | fortplot_matplotlib_plots | Subroutine | Activate a secondary y-axis that shares the x-axis but renders on the right |
| twiny | fortplot_matplotlib_plots | Subroutine | Activate a secondary x-axis that shares the y-axis but renders on the top |
| unicode_codepoint_to_ascii | fortplot_unicode | Subroutine | Convert Unicode codepoint to ASCII equivalent |
| unicode_codepoint_to_pdf_escape | fortplot_pdf_text_escape | Subroutine | Convert Unicode codepoint to PDF escape sequence |
| unicode_to_symbol_char | fortplot_pdf_text_escape | Subroutine | Convert Unicode codepoint to Symbol font character |
| uniform_edgecolor | fortplot_matplotlib_scatter_utils | Subroutine | |
| unix_seconds_from_julian_day | fortplot_datetime | Function | |
| unix_seconds_to_datetime | fortplot_datetime | Function | |
| update_boxplot_ranges | fortplot_figure_boxplot | Subroutine | Update data ranges based on boxplot statistics |
| update_data_ranges_boxplot_figure | fortplot_figure_core_ranges | Subroutine | Update data ranges after adding boxplot |
| update_data_ranges_figure | fortplot_figure_core_ranges | Subroutine | Update data ranges based on current plot
Routes to primary, twinx, or twiny ranges depending on the
axis tag of the plot at |
| update_data_ranges_pcolormesh_figure | fortplot_figure_core_ranges | Subroutine | Update data ranges after adding pcolormesh plot |
| update_figure_data_ranges_boxplot | fortplot_figure_ranges | Subroutine | Update data ranges after adding boxplot - delegate to specialized module |
| update_figure_data_ranges_pcolormesh | fortplot_figure_ranges | Subroutine | Update data ranges after adding pcolormesh plot |
| update_gaussian | probability_animation_demo | Subroutine | |
| update_plot_ydata | fortplot_figure_plot_management | Subroutine | |
| update_wave | save_animation_demo | Subroutine | |
| use_axis | fortplot_matplotlib_axes | Subroutine | Switch the active axes by name. |
| use_system_mkdir_ci | fortplot_system_commands | Subroutine | |
| utf8_char_length | fortplot_unicode | Function | Determine the number of bytes in a UTF-8 character |
| utf8_to_codepoint | fortplot_unicode | Function | Convert UTF-8 sequence to Unicode codepoint |
| validate_annotation | fortplot_annotation_types | Subroutine | Comprehensive annotation validation combining coordinate and parameter checks |
| validate_annotation_coordinates | fortplot_annotation_types | Subroutine | Validate annotation coordinate values |
| validate_annotation_parameters | fortplot_annotation_types | Subroutine | Validate annotation parameter values |
| validate_array_bounds | fortplot_parameter_validation | Function | |
| validate_ascii_format | fortplot_validation | Function | |
| validate_color_for_backend | fortplot_color_parsing | Function | Validate color for specific backend constraints |
| validate_color_values | fortplot_validation_core | Function | |
| validate_colormap_name | fortplot_colormap | Function | Validate if colormap name is supported |
| validate_coordinate_arrays | fortplot_coordinate_validation | Function | Comprehensive validation of coordinate arrays for plotting Returns validation result with detailed information about the data |
| validate_coordinate_ranges | fortplot_coordinate_validation | Function | Validate that coordinate values are finite and reasonable |
| validate_file_exists | fortplot_validation | Function | |
| validate_file_path | fortplot_validation_core | Function | |
| validate_file_size | fortplot_validation | Function | |
| validate_generated_video | fortplot_animation_validation | Function | |
| validate_generated_video_enhanced | fortplot_animation_validation | Function | |
| validate_marker_style | fortplot_markers | Function | Validate if marker style is supported |
| validate_numeric_parameters | fortplot_parameter_validation | Function | |
| validate_pcolormesh_grid | fortplot_pcolormesh | Subroutine | Validate grid dimensions for pcolormesh with flexible dimension support |
| validate_pdf_format | fortplot_validation | Function | |
| validate_plot_data | fortplot_figure_plot_management | Subroutine | |
| validate_plot_dimensions | fortplot_validation_core | Function | |
| validate_plot_dimensions_with_context | fortplot_validation_core | Function | |
| validate_png_file | fortplot_png_validation | Subroutine | Validate PNG file using internal signature checks (secure) |
| validate_png_format | fortplot_validation | Function | |
| validate_streamplot_arrow_parameters | fortplot_streamplot_arrow_utils | Subroutine | Validate arrow size and style inputs (matplotlib compatible) |
| validate_text_parameters | fortplot_annotation_layout | Subroutine | Alias for validate_annotation_parameters for API compatibility |
| validate_typography_parameters | fortplot_annotation_layout | Subroutine | Validate typography-specific parameters with normalization support |
| validation_error | fortplot_validation_context | Subroutine | |
| validation_error_with_context | fortplot_validation_context | Subroutine | |
| validation_warning | fortplot_validation_context | Subroutine | |
| validation_warning_with_context | fortplot_validation_context | Subroutine | |
| vegalite_default_config | fortplot_spec_config_defaults | Function | Return config_t matching Vega-Lite visual defaults. |
| vl_area | fortplot_spec_builder | Function | |
| vl_bar | fortplot_spec_builder | Function | |
| vl_channel | fortplot_spec_builder | Function | |
| vl_layer_add | fortplot_spec_builder | Subroutine | |
| vl_line | fortplot_spec_builder | Function | |
| vl_point | fortplot_spec_builder | Function | |
| vlines | fortplot_matplotlib_axes | Subroutine | Draw one or more vertical lines at x values between ymin and ymax |
| wait_for_user_input | fortplot_figure_utilities | Subroutine | Wait for user input when blocking=true Reads a single character or line from stdin to pause execution This prevents the program from continuing until user interaction |
| write_binary_to_unit | fortplot_pdf_stream | Subroutine | Write binary string to unit using exact length (no trimming) |
| write_catalog_object | fortplot_pdf_objects | Subroutine | Write PDF catalog object |
| write_centered_title | fortplot_ascii_utils | Subroutine | Write centered title to file with Unicode-to-ASCII conversion |
| write_content_object | fortplot_pdf_objects | Subroutine | Write PDF content stream object |
| write_extgstate_object | fortplot_pdf_objects | Subroutine | |
| write_generated_outputs | fortplot_doc_output | Subroutine | |
| write_helvetica_font_object | fortplot_pdf_objects | Subroutine | Write Helvetica font object |
| write_image_object | fortplot_pdf_objects | Subroutine | |
| write_info_object | fortplot_pdf_objects | Subroutine | |
| write_media_group | fortplot_doc_output | Subroutine | |
| write_null_object | fortplot_pdf_objects | Subroutine | |
| write_output_section | fortplot_doc_output | Subroutine | |
| write_page_object | fortplot_pdf_objects | Subroutine | Write PDF page object |
| write_pages_object | fortplot_pdf_objects | Subroutine | Write PDF pages object |
| write_pdf_file | fortplot_pdf_io | Subroutine | Write PDF context to file |
| write_pdf_line | fortplot_pdf_stream | Subroutine | Write a single PDF line terminated by CRLF. |
| write_png_file | fortplot_png | Subroutine | |
| write_png_to_pipe | fortplot_pipe | Function | |
| write_string_to_unit | fortplot_pdf_stream | Subroutine | Write string to unit, handling long strings properly |
| write_symbol_font_object | fortplot_pdf_objects | Subroutine | Write Symbol font object |
| xlabel | fortplot_matplotlib_axes | Subroutine | Set the x-axis label text. Routes to subplot or figure level. |
| xlim | fortplot_matplotlib_axes | Subroutine | Set the x-axis display limits. |
| xscale | fortplot_matplotlib_axes | Subroutine | matplotlib pyplot alias for set_xscale |
| y_tick_label_right_edge_at_axis | fortplot_raster_labels | Function | Compute the rightmost edge of y-tick labels relative to the y-axis |
| y_tick_label_right_edge_at_axis | fortplot_raster_axes_secondary | Function | |
| y_tick_label_right_edge_at_axis_old | fortplot_raster_axes_secondary | Function | |
| ylabel | fortplot_matplotlib_axes | Subroutine | Set the y-axis label text. Routes to subplot or figure level. |
| ylim | fortplot_matplotlib_axes | Subroutine | Set the y-axis display limits. |
| yscale | fortplot_matplotlib_axes | Subroutine | matplotlib pyplot alias for set_yscale |
| zlib_compress | fortplot_zlib_compress | Function | Backwards-compatible wrapper returning an allocatable result |
| zlib_compress_into | fortplot_zlib_compress | Subroutine | Compress data into a newly allocated buffer with zlib wrapper |
| zlib_decompress | fortplot_zlib_decompress | Function | Decompress zlib (deflate) data using fixed Huffman tables |