1PLMAP(3plplot) PLplot API PLMAP(3plplot)
2
3
4
6 plmap - Plot continental outline or shapefile data in world coordinates
7
9 plmap(mapform, name, minx, maxx, miny, maxy)
10
12 Plots continental outlines or shapefile data in world coordinates. A
13 demonstration of how to use this function to create different projec‐
14 tions can be found in examples/c/x19c. PLplot is provided with basic
15 coastal outlines and USA state borders. To use the map functionality
16 PLplot must be compiled with the shapelib library. Shapefiles have
17 become a popular standard for geographical data and data in this format
18 can be easily found from a number of online sources. Shapefile data is
19 actually provided as three or more files with the same filename, but
20 different extensions. The .shp and .shx files are required for plotting
21 Shapefile data with PLplot.
22
23 PLplot currently supports the point, multipoint, polyline and polygon
24 objects within shapefiles. However holes in polygons are not supported.
25 When plmap is used the type of object is derived from the shapefile, if
26 you wish to override the type then use one of the other plmap variants.
27 The built in maps have line data only.
28
29 Redacted form: plmap(mapform, name, minx, maxx, miny, maxy)
30
31 This function is used in example 19.
32
34 mapform (PLMAPFORM_callback(3plplot), input)
35 A user supplied function to transform the original map data
36 coordinates to a new coordinate system. The PLplot-supplied map
37 data is provided as latitudes and longitudes; other Shapefile
38 data may be provided in other coordinate systems as can be found
39 in their .prj plain text files. For example, by using this
40 transform we can change from a longitude, latitude coordinate to
41 a polar stereographic projection. Initially, x[0]..[n-1] are the
42 original x coordinates (longitudes for the PLplot-supplied data)
43 and y[0]..y[n-1] are the corresponding y coordinates (latitudes
44 for the PLplot supplied data). After the call to mapform(), x[]
45 and y[] should be replaced by the corresponding plot coordi‐
46 nates. If no transform is desired, mapform can be replaced by
47 NULL.
48
49 name (PLCHAR_VECTOR(3plplot), input)
50 An ascii character string specifying the type of map plotted.
51 This is either one of the PLplot built-in maps or the file name
52 of a set of Shapefile files without the file extensions. For the
53 PLplot built-in maps the possible values are: "globe" -- conti‐
54 nental outlines "usa" -- USA and state boundaries "cglobe" --
55 continental outlines and countries "usaglobe" -- USA, state
56 boundaries and continental outlines
57
58
59 minx (PLFLT(3plplot), input)
60 The minimum x value of map elements to be drawn. The units must
61 match the shapefile (built in maps are degrees lat/lon). Objects
62 in the file which do not encroach on the box defined by minx,
63 maxx, miny, maxy will not be rendered. But note this is simply
64 an optimisation, not a clipping so for objects with some points
65 inside the box and some points outside the box all the points
66 will be rendered. These parameters also define latitude and lon‐
67 gitude wrapping for shapefiles using these units. Longitude
68 points will be wrapped by integer multiples of 360 degrees to
69 place them in the box. This allows the same data to be used on
70 plots from -180-180 or 0-360 longitude ranges. In fact if you
71 plot from -180-540 you will get two cycles of data drawn. The
72 value of minx must be less than the value of maxx. Passing in a
73 nan, max/-max floating point number or +/-infinity will case the
74 bounding box from the shapefile to be used.
75
76 maxx (PLFLT(3plplot), input)
77 The maximum x value of map elements to be drawn - see minx.
78
79 miny (PLFLT(3plplot), input)
80 The minimum y value of map elements to be drawn - see minx.
81
82 maxy (PLFLT(3plplot), input)
83 The maximum y value of map elements to be drawn - see minx.
84
85
87 Many developers (who are credited at http://plplot.org/credits.php)
88 have contributed to PLplot over its long history.
89
91 PLplot documentation at http://plplot.org/documentation.php.
92
93
94
95 August, 2019 PLMAP(3plplot)