fortplot_pdf_axes_drawing Module

PDF axis drawing module

Handles plot frame, tick marks, minor ticks, and tick label rendering. Depends on fortplot_pdf_axes_tick_data for tick data generation.



Subroutines

public subroutine draw_pdf_frame_with_area(ctx, plot_left, plot_bottom, plot_width, plot_height)

Draw the plot frame using actual plot area coordinates (FIXED version)

Arguments

Type IntentOptional Attributes Name
type(pdf_context_core), intent(inout) :: ctx
real(kind=wp), intent(in) :: plot_left
real(kind=wp), intent(in) :: plot_bottom
real(kind=wp), intent(in) :: plot_width
real(kind=wp), intent(in) :: plot_height

public subroutine draw_pdf_tick_marks_with_area(ctx, x_positions, y_positions, num_x, num_y, plot_left, plot_bottom)

Draw tick marks using actual plot area coordinates (FIXED version)

Arguments

Type IntentOptional Attributes Name
type(pdf_context_core), intent(inout) :: ctx
real(kind=wp), intent(in), contiguous :: x_positions(:)
real(kind=wp), intent(in), contiguous :: y_positions(:)
integer, intent(in) :: num_x
integer, intent(in) :: num_y
real(kind=wp), intent(in) :: plot_left
real(kind=wp), intent(in) :: plot_bottom

public subroutine draw_pdf_tick_labels_with_area(ctx, x_positions, y_positions, x_labels, y_labels, num_x, num_y, plot_left, plot_bottom, plot_height, max_y_tick_label_width)

Draw tick labels using actual plot area coordinates (FIXED version)

Arguments

Type IntentOptional Attributes Name
type(pdf_context_core), intent(inout) :: ctx
real(kind=wp), intent(in), contiguous :: x_positions(:)
real(kind=wp), intent(in), contiguous :: y_positions(:)
character(len=*), intent(in) :: x_labels(:)
character(len=*), intent(in) :: y_labels(:)
integer, intent(in) :: num_x
integer, intent(in) :: num_y
real(kind=wp), intent(in) :: plot_left
real(kind=wp), intent(in) :: plot_bottom
real(kind=wp), intent(in) :: plot_height
real(kind=wp), intent(out), optional :: max_y_tick_label_width

public subroutine draw_pdf_minor_tick_marks(ctx, x_minor_positions, y_minor_positions, num_x_minor, num_y_minor, plot_left, plot_bottom)

Draw minor tick marks (shorter than major ticks)

Arguments

Type IntentOptional Attributes Name
type(pdf_context_core), intent(inout) :: ctx
real(kind=wp), intent(in), contiguous :: x_minor_positions(:)
real(kind=wp), intent(in), contiguous :: y_minor_positions(:)
integer, intent(in) :: num_x_minor
integer, intent(in) :: num_y_minor
real(kind=wp), intent(in) :: plot_left
real(kind=wp), intent(in) :: plot_bottom