I was working with GIS and remote sensing in a university and professional environment some ten years ago (ArcInfo etc), so I have some experience even though somewhat outdated.

Now I am looking for an GIS application for a small farming project and I found GRASS and QGIS projects which both sound very interesting. However, I do not really get the difference between the two programs.

Which one do I use best for simple thematic maps with different layers?

3 Answers 3


GRASS is usually used for scientific purposes. So unless you want to do some sophisticated spatial analysis or routine, just stick with QGIS. Also GRASS works with its own formats so you will have to import/export data to exchange data with someone. Even if you will need sophisticated spatial analysis or routine at some point you will be able to do it with SEXTANTE plugin (GRASS support included) for QGIS. In QGIS there was also a plugin for communication with GRASS but SEXTANTE took its place. I think for simple mapping purposes you should use QGIS.

  • 4
    SEXTANTE is an interface to GRASS hence why the GRASS plugin is dead.
    – Nathan W
    Commented May 6, 2013 at 8:57
  • Dead or unmaintained?
    – maning
    Commented May 6, 2013 at 9:39
  • 2
    Unmaintained. It should still work in 1.8 but in 2.0 it is better to use SEXTANTE.
    – Nathan W
    Commented May 6, 2013 at 10:02
  • Thank you very much for the answer. I'll give it try and will probably be back in the forum at some stage.
    – Alex
    Commented May 6, 2013 at 10:46
  • 5
    Enjoy grasswiki.osgeo.org/wiki/GRASS_and_QGIS and grasswiki.osgeo.org/wiki/GRASS_and_Sextante (the latter has the advantage that the QGIS user can run GRASS GIS commands right away while the first solution is more complicated to use. BTW: GRASS GIS is generic and not only for scientific purpose. But many algorithms have a scientific origin... brought to the masses :)
    – markusN
    Commented May 6, 2013 at 14:10

They have a major difference on how they deal with vectors and this is very important:

GRASS has full/real topology support, that means that a single boundary can share several areas .

QGIS is primarily non-topological or "spaghetti" , adjacent area boundaries are duplicated.

And they relate in the way that Qgis can display and edit GRASS vectors through the GRASS plugin, preserving the topology.

So since you plan to work with thematic maps, which I assume are in vector format, I would recommend also take a look at this article who points some info on topology.

  • 3
    is this answer still valid? I believe QGIS has topology now. docs.qgis.org/2.2/en/docs/training_manual/create_vector_data/…
    – user36856
    Commented Sep 10, 2014 at 22:45
  • 5
    Yes, it's still valid. The link points to a discussion of using the editor in a manner that preserves topology, but it is doing so by changing nodes/arcs between adjacent polygons in the same way. The polygons are still stored completely independently, which means nodes/arcs are duplicated. In a truly topological vector data format, like GRASS uses, the nodes/arcs are stored once and shared between the adjacent polygons. Commented Sep 11, 2014 at 2:53

What is not mentioned, yet:

  • QGIS and GRASS GIS - both can be run as a completely separate software
  • However, GRASS GIS algorithms are included in QGIS processing toolbox (can be excluded or included during the installation of QGIS software). Thus, GRASS algorithms (similarly as GDAL, SAGA, R scripts, or other activated providers) can be used directly from QGIS.

Just a personal experience:

I use GRASS for a long time, so I am comfortable with this software. However, a lot of jobs with geodata up to final map is much more convenient in QGIS. Therefore my present experience:

  • Primarily I work in QGIS: vector data editing, attributes, simple raster calculations, visualisation/styling, map outputs in a composer/layout, etc.
  • I typically prefer GRASS GIS for heavy processing: large raster data computation, true topology (as @Pablo noted) or cleaning topology jobs
  • Personally I found scripting more convenient for GRASS (wrapped with python or directly in shell script)
  • Most of GRASS GIS routines are built in QGIS processing toolbox; but not all of them or not with full features; most of all I couldn't reproduce some functionality of Grass raster calculator (r.mapcalc) in QGIS
  • Compared to window style in QGIS, GRASS command line is much faster and straightforward to develop a command

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.