fortplot_raster_ticks Module

Raster tick marks and tick labels rendering functionality (primary axes) Extracted from fortplot_raster_axes.f90 for single responsibility principle



Functions

public pure function resolve_tick_font_px(raster) result(px)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(in) :: raster

Return Value real(kind=wp)


Subroutines

public subroutine raster_draw_x_axis_ticks(raster, width, height, plot_area, xscale, symlog_threshold, xticks, xtick_labels, xtick_colors, x_min, x_max)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(inout) :: raster
integer, intent(in) :: width
integer, intent(in) :: height
type(plot_area_t), intent(in) :: plot_area
character(len=*), intent(in) :: xscale
real(kind=wp), intent(in) :: symlog_threshold
real(kind=wp), intent(in), contiguous :: xticks(:)
character(len=*), intent(in) :: xtick_labels(:)
integer, intent(in) :: xtick_colors(:,:)
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max

public subroutine raster_draw_y_axis_ticks(raster, width, height, plot_area, yscale, symlog_threshold, yticks, ytick_labels, ytick_colors, y_min, y_max)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(inout) :: raster
integer, intent(in) :: width
integer, intent(in) :: height
type(plot_area_t), intent(in) :: plot_area
character(len=*), intent(in) :: yscale
real(kind=wp), intent(in) :: symlog_threshold
real(kind=wp), intent(in), contiguous :: yticks(:)
character(len=*), intent(in) :: ytick_labels(:)
integer, intent(in) :: ytick_colors(:,:)
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max

public subroutine raster_draw_x_axis_tick_marks_only(raster, width, height, plot_area, xscale, symlog_threshold, xticks, xtick_colors, x_min, x_max)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(inout) :: raster
integer, intent(in) :: width
integer, intent(in) :: height
type(plot_area_t), intent(in) :: plot_area
character(len=*), intent(in) :: xscale
real(kind=wp), intent(in) :: symlog_threshold
real(kind=wp), intent(in), contiguous :: xticks(:)
integer, intent(in) :: xtick_colors(:,:)
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max

public subroutine raster_draw_y_axis_tick_marks_only(raster, width, height, plot_area, yscale, symlog_threshold, yticks, ytick_colors, y_min, y_max)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(inout) :: raster
integer, intent(in) :: width
integer, intent(in) :: height
type(plot_area_t), intent(in) :: plot_area
character(len=*), intent(in) :: yscale
real(kind=wp), intent(in) :: symlog_threshold
real(kind=wp), intent(in), contiguous :: yticks(:)
integer, intent(in) :: ytick_colors(:,:)
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max

public subroutine raster_draw_x_axis_tick_labels_only(raster, width, height, plot_area, xscale, symlog_threshold, xticks, xtick_labels, x_min, x_max)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(inout) :: raster
integer, intent(in) :: width
integer, intent(in) :: height
type(plot_area_t), intent(in) :: plot_area
character(len=*), intent(in) :: xscale
real(kind=wp), intent(in) :: symlog_threshold
real(kind=wp), intent(in), contiguous :: xticks(:)
character(len=*), intent(in) :: xtick_labels(:)
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max

public subroutine raster_draw_y_axis_tick_labels_only(raster, width, height, plot_area, yscale, symlog_threshold, yticks, ytick_labels, y_min, y_max)

Arguments

Type IntentOptional Attributes Name
type(raster_image_t), intent(inout) :: raster
integer, intent(in) :: width
integer, intent(in) :: height
type(plot_area_t), intent(in) :: plot_area
character(len=*), intent(in) :: yscale
real(kind=wp), intent(in) :: symlog_threshold
real(kind=wp), intent(in), contiguous :: yticks(:)
character(len=*), intent(in) :: ytick_labels(:)
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max

public subroutine compute_non_overlapping_mask(xticks, xtick_labels, x_min, x_max, xscale, symlog_threshold, plot_area, visibility_mask)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in), contiguous :: xticks(:)
character(len=*), intent(in) :: xtick_labels(:)
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max
character(len=*), intent(in) :: xscale
real(kind=wp), intent(in) :: symlog_threshold
type(plot_area_t), intent(in) :: plot_area
logical, intent(out) :: visibility_mask(size(xticks))