Separate positioning for tick labels vs axis labels Follows matplotlib exact spacing measurements
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | parameter | :: | LABEL_SPACING_X | = | 20 | |
integer, | public, | parameter | :: | LABEL_SPACING_Y | = | 15 |
Calculate X-axis label position with matplotlib-style centering and spacing
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tick_x | |||
real(kind=wp), | intent(in) | :: | plot_bottom | |||
real(kind=wp), | intent(in) | :: | plot_height | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate Y-axis label position with right alignment and proper spacing
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tick_y | |||
real(kind=wp), | intent(in) | :: | plot_left | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate X-axis tick label position using proper font metrics and matplotlib spacing
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tick_x | |||
real(kind=wp), | intent(in) | :: | plot_bottom | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate Y-axis tick label position using proper font metrics
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tick_y | |||
real(kind=wp), | intent(in) | :: | plot_left | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate X-axis label position (40px below plot)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | center_x | |||
real(kind=wp), | intent(in) | :: | plot_bottom | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate Y-axis label position with proper spacing from tick labels
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | center_y | |||
real(kind=wp), | intent(in) | :: | plot_left | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate X-axis tick label position for PDF (Y=0 at bottom, increases upward)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tick_x | |||
real(kind=wp), | intent(in) | :: | plot_bottom | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |
Calculate Y-axis tick label position for PDF (Y=0 at bottom, increases upward)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | tick_y | |||
real(kind=wp), | intent(in) | :: | plot_left | |||
character(len=*), | intent(in) | :: | label_text | |||
real(kind=wp), | intent(out) | :: | label_x | |||
real(kind=wp), | intent(out) | :: | label_y |