d.legend.vect
Displays a vector legend in the active graphics frame.
d.legend.vect [-b] [at=left,top] [columns=integer] [title=string] [symbol_size=integer] [border_color=name] [bgcolor=name] [border_width=integer] [font=string] [fontsize=float] [title_font=string] [title_fontsize=float] [sub_font=string] [sub_fontsize=float] [fontcolor=name] [separator=character] [input=name] [output=name] [--overwrite] [--verbose] [--quiet] [--qq] [--ui]
Example:
d.legend.vect
grass.script.run_command("d.legend.vect", at="10,40", columns=1, title=None, symbol_size=20, border_color="black", bgcolor="white", border_width=2, font=None, fontsize=None, title_font=None, title_fontsize=None, sub_font=None, sub_fontsize=None, fontcolor="black", separator="pipe", input=None, output=None, flags=None, overwrite=False, verbose=False, quiet=False, superquiet=False)
Example:
gs.run_command("d.legend.vect")
Parameters
at=left,top
Screen position of legend to be drawn (percentage, [0,0] is lower left)
Allowed values: 0-100
Default: 10,40
columns=integer
Number of legend columns
Default: 1
title=string
Legend title
symbol_size=integer
Symbol size
Default: 20
border_color=name
Border color
Either a standard color name, R:G:B triplet, or "none"
Default: black
bgcolor=name
Background color
Either a standard color name, R:G:B triplet, or "none"
Default: white
border_width=integer
Background border width
Default: 2
font=string
Font name
fontsize=float
Font size
Default: 12
Allowed values: 1-360
title_font=string
Title font name
title_fontsize=float
Title font size
Default: 18
Allowed values: 1-360
sub_font=string
Subtitle font name
sub_fontsize=float
Subtitle font size
Default: 14
Allowed values: 1-360
fontcolor=name
Font color
Either a standard color name or R:G:B triplet
Default: black
separator=character
Field separator for input file
Special characters: pipe, comma, space, tab, newline
Default: pipe
input=name
Input legend file
Path to legend file
output=name
Output csv file
Path to output file or '-' for standard output
-b
Display legend background
--overwrite
Allow output files to overwrite existing files
--help
Print usage summary
--verbose
Verbose module output
--quiet
Quiet module output
--qq
Very quiet module output
--ui
Force launching GUI dialog
at : tuple[float, float] | list[float] | str, optional
Screen position of legend to be drawn (percentage, [0,0] is lower left)
Used as: left,top
Allowed values: 0-100
Default: 10,40
columns : int, optional
Number of legend columns
Default: 1
title : str, optional
Legend title
symbol_size : int, optional
Symbol size
Default: 20
border_color : str, optional
Border color
Either a standard color name, R:G:B triplet, or "none"
Used as: input, color, name
Default: black
bgcolor : str, optional
Background color
Either a standard color name, R:G:B triplet, or "none"
Used as: input, color, name
Default: white
border_width : int, optional
Background border width
Default: 2
font : str, optional
Font name
fontsize : float, optional
Font size
Default: 12
Allowed values: 1-360
title_font : str, optional
Title font name
title_fontsize : float, optional
Title font size
Default: 18
Allowed values: 1-360
sub_font : str, optional
Subtitle font name
sub_fontsize : float, optional
Subtitle font size
Default: 14
Allowed values: 1-360
fontcolor : str, optional
Font color
Either a standard color name or R:G:B triplet
Used as: input, color, name
Default: black
separator : str, optional
Field separator for input file
Special characters: pipe, comma, space, tab, newline
Used as: input, separator, character
Default: pipe
input : str, optional
Input legend file
Path to legend file
Used as: input, file, name
output : str, optional
Output csv file
Path to output file or '-' for standard output
Used as: output, file, name
flags : str, optional
Allowed values: b
b
Display legend background
overwrite: bool, optional
Allow output files to overwrite existing files
Default: False
verbose: bool, optional
Verbose module output
Default: False
quiet: bool, optional
Quiet module output
Default: False
superquiet: bool, optional
Very quiet module output
Default: False
DESCRIPTION
d.legend.vect draws vector legend of currently displayed vector maps.
Parameter at defines the screen position of upper-left legend corner. Parameter columns defines the number of legend columns. User can specify a title of the legend using parameter title. The font of the title can be changed with title_font, title_fontsize. Flag -b is used to draw background of specified color (bgcolor), border color and border width (border_color and border_width). Parameter symbol_size defines the size of line and area symbols. The size of point symbols is based on currently set symbology of vector maps using d.vect or d.vect.thematic.
Module d.vect.legend supports subtitles (see section Notes). Their font and font size can be set using parameters sub_font and sub_fontsize.
Changing legend symbols and labels
Symbols for vector areas and lines, and labels for individual vector labels can be changed in the symbology setting of each vector map in d.vect or d.vect.thematic module (in Legend tab). Use its parameters icon_area and icon_line to pick from available symbols. By using parameter legend_label of d.vect module, users can change the default label, which is the map name.
Modifying the order of legend entries and omitting certain vector maps from legend
Modules d.vect and d.vect.thematic have a flag -s which removes the particular vector or thematic vector from vector legend.
The order of entries is defined by the order in Layer Manager (if used in GRASS GIS GUI). If that's not desired, one can export the legend file into a text file using parameter output, change the order of entries (see section Notes for format description) and then upload the modified file with parameter input. Parameter output defines path to the file where the internal legend file will be saved to, input defines the input file which the vector legend will be based on (input file must have correct format).
NOTES
Module d.legend.vect draws vector legend based on legend file defined in shell environment variable GRASS_LEGEND_FILE. This file is automatically created and updated whenever d.vect command is used. User can create custom legend file and then use export GRASS_LEGEND_FILE=path/to/file in shell. GRASS GUI and MONITORS create the legend file automatically. By default the legend file is stored in grassdata/project/mapset/.tmp/user directory (in case of d.mon deeper in /monitor_name directory).
Legend file has this format:
label|symbol_name|size|color_type|feature_color|fill_color|line_width|geometry_type|feature_count
Color type can be 'lf' or 'ps'. Based on color type color columns are interpreted as line color and fill colors (lf), or primary and secondary colors (ps). Module d.vect always uses 'lf' and d.vect.thematic 'ps'. Here is an example of legend file with subtitles:
Infrastructure||||||||
major roads|legend/line|5|lf|black|200:200:200|2|line|355
bridges|extra/bridge|15|lf|black|black|1|point|10938
Hydrology||||||||
streams|legend/line_crooked|5|lf|30:144:255|200:200:200|3|line|8554
water bodies|legend/area_curved|5|lf|none|30:144:255|1|area|27764
EXAMPLES
Open cairo monitor to render to file:
g.region vector=nc_state
d.mon cairo
d.vect map=nc_state color=26:26:26 fill_color=229:229:229 width=2 legend_label="state boundaries"
d.vect map=urbanarea color=none fill_color=127:127:127 width=1 legend_label="urban areas"
d.vect map=railroads color=red width=1
d.vect map=hospitals color=77:77:77 fill_color=0:187:0 width=1 icon=basic/cross3 size=10
d.legend.vect -b at=2,40 title="Hospitals in North Carolina" symbol_size=26 fontsize=16 title_fontsize=20
SEE ALSO
d.vect, d.vect.thematic, d.legend
Check also Python module from AddOns: d.vect.thematic2
AUTHORS
Adam Laza, during GSoC 2016 Mentors: Anna Petrasova, Vaclav Petras, Martin Landa
SOURCE CODE
Available at: d.legend.vect source code
(history)
Latest change: Friday Feb 07 19:16:09 2025 in commit a82a39f