fortplot_matplotlib_scatter_dispatch Module

Internal dispatch layer for matplotlib-compatible scatter plots.

Provides 2D and 3D dispatch procedures that prepare data arrays, resolve sizes/linewidths/edgecolors, and call the core scatter library (add_scatter_2d / add_scatter_3d).

This module is internal to the scatter subsystem; consumers should use the public scatter and add_scatter interfaces instead.



Subroutines

public subroutine scatter_3d_string_dispatch(x, y, z, color_rgb, has_color, s, s_scalar, c, label, marker, linewidths, linewidths_scalar, edgecolors, alpha, cmap, vmin, vmax)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in), contiguous :: x(:)
real(kind=wp), intent(in), contiguous :: y(:)
real(kind=wp), intent(in), contiguous :: z(:)
real(kind=wp), intent(in) :: color_rgb(3)
logical, intent(in) :: has_color
real(kind=wp), intent(in), optional :: s(:)
real(kind=wp), intent(in), optional :: s_scalar
real(kind=wp), intent(in), optional :: c(:)
character(len=*), intent(in), optional :: label
character(len=*), intent(in), optional :: marker
real(kind=wp), intent(in), optional :: linewidths(..)
real(kind=wp), intent(in), optional :: linewidths_scalar
class(*), intent(in), optional :: edgecolors(..)
real(kind=wp), intent(in), optional :: alpha
character(len=*), intent(in), optional :: cmap
real(kind=wp), intent(in), optional :: vmin
real(kind=wp), intent(in), optional :: vmax

public subroutine scatter_2d_dispatch(x, y, s, s_scalar, c, label, marker, color, linewidths, linewidths_scalar, edgecolors, alpha, cmap, vmin, vmax, edgecolors_none)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in), contiguous :: x(:)
real(kind=wp), intent(in), contiguous :: y(:)
real(kind=wp), intent(in), optional :: s(:)
real(kind=wp), intent(in), optional :: s_scalar
real(kind=wp), intent(in), optional :: c(:)
character(len=*), intent(in), optional :: label
character(len=*), intent(in), optional :: marker
real(kind=wp), intent(in), optional :: color(3)
real(kind=wp), intent(in), optional :: linewidths(..)
real(kind=wp), intent(in), optional :: linewidths_scalar
class(*), intent(in), optional :: edgecolors(..)
real(kind=wp), intent(in), optional :: alpha
character(len=*), intent(in), optional :: cmap
real(kind=wp), intent(in), optional :: vmin
real(kind=wp), intent(in), optional :: vmax
logical, intent(in), optional :: edgecolors_none

public subroutine scatter_3d_dispatch(x, y, z, s, s_scalar, c, label, marker, color, linewidths, linewidths_scalar, edgecolors, alpha, cmap, vmin, vmax, edgecolors_none)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in), contiguous :: x(:)
real(kind=wp), intent(in), contiguous :: y(:)
real(kind=wp), intent(in), contiguous :: z(:)
real(kind=wp), intent(in), optional :: s(:)
real(kind=wp), intent(in), optional :: s_scalar
real(kind=wp), intent(in), optional :: c(:)
character(len=*), intent(in), optional :: label
character(len=*), intent(in), optional :: marker
real(kind=wp), intent(in), optional :: color(3)
real(kind=wp), intent(in), optional :: linewidths(..)
real(kind=wp), intent(in), optional :: linewidths_scalar
class(*), intent(in), optional :: edgecolors(..)
real(kind=wp), intent(in), optional :: alpha
character(len=*), intent(in), optional :: cmap
real(kind=wp), intent(in), optional :: vmin
real(kind=wp), intent(in), optional :: vmax
logical, intent(in), optional :: edgecolors_none