Skip to contents

Generate a choropleth map of a pair RDD assigning integral values to polygons.

Usage

sedona_render_choropleth_map(
  pair_rdd,
  resolution_x,
  resolution_y,
  output_location,
  output_format = c("png", "gif", "svg"),
  boundary = NULL,
  color_of_variation = c("red", "green", "blue"),
  base_color = c(0, 0, 0),
  shade = TRUE,
  reverse_coords = FALSE,
  overlay = NULL,
  browse = interactive()
)

Arguments

pair_rdd

A pair RDD with Sedona Polygon objects being keys and java.lang.Long being values.

resolution_x

Resolution on the x-axis.

resolution_y

Resolution on the y-axis.

output_location

Location of the output image. This should be the desired path of the image file excluding extension in its file name.

output_format

File format of the output image. Currently "png", "gif", and "svg" formats are supported (default: "png").

boundary

Only render data within the given rectangular boundary. The boundary parameter can be set to either a numeric vector of c(min_x, max_y, min_y, max_y) values, or with a bounding box object e.g., new_bounding_box(sc, min_x, max_y, min_y, max_y), or NULL (the default). If boundary is NULL, then the minimum bounding box of the input spatial RDD will be computed and used as boundary for rendering.

color_of_variation

Which color channel will vary depending on values of data points. Must be one of "red", "green", or "blue". Default: red.

base_color

Color of any data point with value 0. Must be a numeric vector of length 3 specifying values for red, green, and blue channels. Default: c(0, 0, 0).

shade

Whether data point with larger magnitude will be displayed with darker color. Default: TRUE.

reverse_coords

Whether to reverse spatial coordinates in the plot (default: FALSE).

overlay

A viz_op object containing a raster image to be displayed on top of the resulting image.

browse

Whether to open the rendered image in a browser (default: interactive()).

Value

No return value.

See also

Other Sedona visualization routines: sedona_render_heatmap(), sedona_render_scatter_plot()

Examples

library(sparklyr)
library(apache.sedona)

sc <- spark_connect(master = "spark://HOST:PORT")

if (!inherits(sc, "test_connection")) {
  pt_input_location <- "/dev/null" # replace it with the path to your input file
  pt_rdd <- sedona_read_dsv_to_typed_rdd(
    sc,
    location = pt_input_location,
    type = "point",
    first_spatial_col_index = 1
  )
  polygon_input_location <- "/dev/null" # replace it with the path to your input file
  polygon_rdd <- sedona_read_geojson_to_typed_rdd(
    sc,
    location = polygon_input_location,
    type = "polygon"
  )
  join_result_rdd <- sedona_spatial_join_count_by_key(
    pt_rdd,
    polygon_rdd,
    join_type = "intersect",
    partitioner = "quadtree"
  )
  sedona_render_choropleth_map(
    join_result_rdd,
    400,
    200,
    output_location = tempfile("choropleth-map-"),
    boundary = c(-86.8, -86.6, 33.4, 33.6),
    base_color = c(255, 255, 255)
  )
}