Axes and tick generation module
This module handles axis drawing, tick computation, and label formatting for all scale types. Follows Single Responsibility Principle by focusing solely on axis-related functionality.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | parameter | :: | MAX_TICKS | = | 20 | 
Format a tick value as a string label
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | value | |||
| character(len=*), | intent(in) | :: | scale_type | 
Compute tick positions for different scale types
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | scale_type | |||
| real(kind=wp), | intent(in) | :: | data_min | |||
| real(kind=wp), | intent(in) | :: | data_max | |||
| real(kind=wp), | intent(in) | :: | threshold | |||
| real(kind=wp), | intent(out) | :: | tick_positions(MAX_TICKS) | |||
| integer, | intent(out) | :: | num_ticks |