Display drivers - GRASS Manual
Author: GRASS Development Team
Description: Display drivers: GRASS Reference Manual

## Display drivers

The current command line rendering mechanism is direct rendering into a file. The driver is selected by setting the `GRASS_RENDER_IMMEDIATE` variable or by running d.mon module.

List of available display drivers:

- Cairo driver
- PNG driver
- PS driver (Postscript)
- HTMLMAP driver

## NOTES

### GRASS_RENDER_COMMAND

If environmental variable GRASS_RENDER_COMMAND is defined, rendering is redirected by display library to the given external command defined by this variable. Currently only Python scripts are supported.

Lets start with simple example of Python script called render.py:

    #!/usr/bin/env python3

    import os
    import sys

    import grass.script as gs
    from grass.script import task as gtask

    os.environ['GRASS_RENDER_IMMEDIATE'] = 'default'
    os.environ['GRASS_RENDER_FILE'] = 'output.png'

    cmd, dcmd = gtask.cmdstring_to_tuple(sys.argv[1])

    gs.run_command('d.text', text="Test of GRASS_RENDER_COMMAND redirection")

    os.environ['GRASS_RENDER_FILE_READ'] = 'TRUE'
    gs.run_command(cmd, **dcmd)

After defining GRASS_RENDER_COMMAND variable (example for Bash):

    export GRASS_RENDER_COMMAND=render.py

Display GRASS modules like d.rast or d.vect will be executed by render.py program. For example the command

    d.vect roadsmajor

produces output PNG file output.png which will contain rendered features from vector map roadsmajor and sample text "Test of GRASS_RENDER_COMMAND redirection".

## SEE ALSO

d.mon, variables

## SOURCE CODE

Available at: Display drivers source code (history)

Latest change: Friday Apr 17 01:04:26 2026 in commit: 5a31d549cc0150239894bd2b9e67250af87d38b5

Main index | Display index | Topics index | Keywords index | Graphical index | Full index

© 2003-2026 GRASS Development Team, GRASS 8.6.0dev Reference Manual