fortplot_svg_draw Module

Standalone SVG drawing primitives: line, arrow, quad, heatmap, file I/O



Subroutines

public subroutine svg_add_to_stream(stream, content)

Arguments

Type IntentOptional Attributes Name
character(len=:), intent(inout), allocatable :: stream
character(len=*), intent(in) :: content

public subroutine svg_draw_line_impl(x1, y1, x2, y2, pa_left, pa_bottom, pa_width, pa_height, x_min, x_max, y_min, y_max, r, g, b, line_width, dash_pattern, svg_content)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: x1
real(kind=wp), intent(in) :: y1
real(kind=wp), intent(in) :: x2
real(kind=wp), intent(in) :: y2
real(kind=wp), intent(in) :: pa_left
real(kind=wp), intent(in) :: pa_bottom
real(kind=wp), intent(in) :: pa_width
real(kind=wp), intent(in) :: pa_height
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max
real(kind=wp), intent(in) :: r
real(kind=wp), intent(in) :: g
real(kind=wp), intent(in) :: b
real(kind=wp), intent(in) :: line_width
character(len=*), intent(in) :: dash_pattern
character(len=:), intent(inout), allocatable :: svg_content

public subroutine svg_draw_arrow_impl(x, y, dx, dy, size, style, pa_left, pa_bottom, pa_width, pa_height, x_min, x_max, y_min, y_max, r, g, b, svg_content)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: x
real(kind=wp), intent(in) :: y
real(kind=wp), intent(in) :: dx
real(kind=wp), intent(in) :: dy
real(kind=wp), intent(in) :: size
character(len=*), intent(in) :: style
real(kind=wp), intent(in) :: pa_left
real(kind=wp), intent(in) :: pa_bottom
real(kind=wp), intent(in) :: pa_width
real(kind=wp), intent(in) :: pa_height
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max
real(kind=wp), intent(in) :: r
real(kind=wp), intent(in) :: g
real(kind=wp), intent(in) :: b
character(len=:), intent(inout), allocatable :: svg_content

public subroutine svg_fill_quad_impl(x_quad, y_quad, pa_left, pa_bottom, pa_width, pa_height, x_min, x_max, y_min, y_max, r, g, b, svg_content)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: x_quad(4)
real(kind=wp), intent(in) :: y_quad(4)
real(kind=wp), intent(in) :: pa_left
real(kind=wp), intent(in) :: pa_bottom
real(kind=wp), intent(in) :: pa_width
real(kind=wp), intent(in) :: pa_height
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max
real(kind=wp), intent(in) :: r
real(kind=wp), intent(in) :: g
real(kind=wp), intent(in) :: b
character(len=:), intent(inout), allocatable :: svg_content

public subroutine svg_fill_heatmap_impl(x_grid, y_grid, z_grid, z_min, z_max, colormap_name, pa_left, pa_bottom, pa_width, pa_height, x_min, x_max, y_min, y_max, svg_content)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in), contiguous :: x_grid(:)
real(kind=wp), intent(in), contiguous :: y_grid(:)
real(kind=wp), intent(in), contiguous :: z_grid(:,:)
real(kind=wp), intent(in) :: z_min
real(kind=wp), intent(in) :: z_max
character(len=*), intent(in), optional :: colormap_name
real(kind=wp), intent(in) :: pa_left
real(kind=wp), intent(in) :: pa_bottom
real(kind=wp), intent(in) :: pa_width
real(kind=wp), intent(in) :: pa_height
real(kind=wp), intent(in) :: x_min
real(kind=wp), intent(in) :: x_max
real(kind=wp), intent(in) :: y_min
real(kind=wp), intent(in) :: y_max
character(len=:), intent(inout), allocatable :: svg_content

public subroutine svg_write_file_impl(filename, content_stream, width, height, ios)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: filename
character(len=:), intent(in), allocatable :: content_stream
integer, intent(in) :: width
integer, intent(in) :: height
integer, intent(out) :: ios