Tutorial: Setting Up A Working GRASS Environment in QGIS

GRASS is a popular open source GIS toolkit and has a large number of useful raster, vector and terrain tools for GIS analysis. You can use these toolswithin Quantum GIS with the GRASS plugin. Unfortunately, GRASS is fairly unintuitive for beginner GIS users and it can be daunting to use these tools. In this tutorial I will show you how to setup a simple and generalized working environment that will enable GRASS tools to be used within QGIS.

I will not go in-depth in the concept of a GRASS database, mapset and location. These concepts are useful when setting up a multi-user environment in a project setting, but for most beginners and single-person setups need not worry about learning the nuances of these concepts.
  • First make sure the GRASS plugin is loaded and enabled. If you do not see GRASS under plugins, please follow this tutorial to find and enable the plugin. Once enabled, go to Plugins → GRASS → New mapset
  • In the pop up window, click on Browse and go to a directory where the GRASS data would be stored. This is called a ‘Database’ in GRASS lingo and contain all settings and layers for a particular project. Click Next.
  • In the next window, you will be asked to create a new location. Since we are creating a generalized workspace, you can name it ‘World’. Click Next.


  • Next, you will be asked to define a projection. This is very different from traditional GIS systems where you can work with data in different projections simultaneously. In GRASS, the projection of your project needs to be defined upfront and all data that you import to GRASS would be re-projeccted to this projection. If you have a specific projection for your project, you may choose it here. For most beginners a WGS84 CRS would be sufficient.

  • In the next screen, you will be asked to select a GRASS region. Again this is not how most GIS systems work. In GRASS, you have to pre-define the extent of the geographic area for your project. Any layer with data outside this region cannot be imported to GRASS. Unless you have a specific reason, you should leave the region to the default global extents. Click Next.
  • Now you will have to name a mapset. For single users using GRASS for simple analysis, this should not matter. You can simply name it ‘World’ and click Next.

  • Click Finish in the next screen and you will get a confirmation message that saying your new mapset has been created.
  • Now if you go to Plugins → GRASS , you will see that a lot more options are now enabled. Before we can start using the tools, click on ‘Edit Current GRASS Region’ option.
  • You will remember that we had an option to set the project extents when setting up the new mapset. But you will notice some more option in this screen. There is an option of setting the ‘Resolution’. This is important when working with Rasters. If you create rasters in your GRASS project, the resulting resolution will be determined by this setting. For this project let’s set the X and Y resolution to be 0.1.
  • Now you are all set with yourr GRASS environment. You can explore the GRASS Toolbox under Plugins → GRASS → Open GRASS Tools. These contain rich set of tools that can tackle even the most complexx GIS Analysis. This is akin to the Arc Toolbox you may have used in ArcGIS. I will show you how to use some of these tools in subsequent tutorials.