QGIS has received a lot of press and activity lately. In the community, they have just completed their 2015 User Conference in Denmark, while also announcing QGIS 2.10 is now in beta testing. At Boundless, Victor Olaya — my colleague and QGIS core contributor — just finished a post describing how QGIS can support MGRS coordinates. Another colleague, Aaron Miller, posted a blog about how you can use QGIS to perform logistics routing. Late last year, Boundless responded to numerous market questions with a 4-part blog series on how QGIS compares to proprietary desktop GIS software. We pointed out that QGIS is easy-to-install, integrates with OpenGeo Suite, and has reliable support offerings, making it a very viable alternative to ArcGIS for Desktop. We then went into detail on how to use QGIS to perform visualization, cartography, analysis, and editing.
There is a good reason we are taking the time to highlight QGIS. You recall I blogged about how more and more customers are asking about how OpenGeo Suite can work as part of a hybrid architecture of both proprietary and open source software. Customers are appreciating that hybrid migration strategies targeted at non-power users can quickly realize significant savings, and replacing proprietary (not to mention, expensive) desktop GIS applications with QGIS is a great place to start.
In my experience, the vast majority of desktop GIS users fit into the ‘light to moderate’ GIS use case – what most of us know as the 80/20 rule. That is, 80% of those users only use about 20% of the software’s total functionality. Plotting dots on a map, exporting simple overlays as JPEGs, digitizing vector content from imagery, and simple analysis such as point-in-polygon filtering. Of course, there still is the 20% who do perform more in-depth analytical functions and complex cartographic work, but they are by far the minority. So you have to ask yourself, is it worth spending all that money for proprietary desktop GIS software if you aren’t utilizing its full potential? Is there not a better option for the majority of users who wish to simply geo-enable their content? Put another way, why are you paying for the Ferrari when all you need is the Vespa? The market is validating that QGIS satisfies this need – don’t take my word for it, do a Twitter search for “qgis” – and is a great first step into achieving a hybrid GIS architecture.
The legacy gripe about QGIS is it is not as intuitive as users would have liked. I’ll admit, older versions of the user interface/user experience were a bit clunky, and made the transition from proprietary desktop GIS a bit too far for most analysts (myself included). But QGIS has come a long way, and if you haven’t played with it in a while (or at all), I highly recommend you give it a try. It runs on Windows, Linux, and OS X, and there is even a new version that runs on Android. The v2.0 release focused largely on the look/feel of the application, and it is now far more intuitive than ever before. Even still, many folks are hesitant to make the jump to QGIS simply because they don’t want to take the time to learn the new ‘buttonology’.
So I decided to write a two-part series to showcase just how simple it is for a typical desktop analyst to migrate to using QGIS. Part 1 will illustrate how to accomplish the 10 functions/workflows performed most often by desktop analysts, and part 2 will focus on extending QGIS capabilities through the use of plugins. QGIS really is simple to use, and will satisfy the needs of 80% of users without the high license cost of proprietary desktop software. So without further ado, and in no particular order…
- Overlay of Data
You can add all types of data into your QGIS project by using the Add Data buttons on the Layers toolbar. QGIS handles most open and proprietary spatial data formats right out of the box, including shapefiles, file geodatabase layers, commercial imagery and data stored inside of relational databases. Those layers show up in your project’s Layers window in a very familiar table of contents (TOC) style display that most desktop GIS users are akin to using.
You can re-order your layers, make changes to the symbology and labeling, and set scale dependencies and group layers to help you organize your TOC. Of course you can also open the attribute table for each vector layer. It really is just that simple.
- Zoom to a Point
The ability to zoom to a point on the earth is pretty fundamental to any desktop GIS use. QGIS makes this easy with a simple Zoom to Coordinate tool right on the main interface. Simply click to the tool to activate the window, then enter the XY coordinate of the location you are interested in.
- Creating Points from a File
Creating points from a delimited file of coordinates is very simple inside of QGIS. In fact, it’s actually easier to do in QGIS than is it in ArcGIS for Desktop! All you need to do is click on the Add Delimited Text Layer icon, and fill out the input parameters, and hit ok. The tool can handle text files, comma and tab separated files and Excel spreadsheets.
- Point in Polygon Selection
The ability to select which points which fall within a polygon is made easy through the Points in Polygon tool found under the Vector dropdown > Analysis tools > Points in polygon. Once the selection is made, you can export the selected features to a new file, and/or add that new file to your QGIS map.
- Buffering a Point/Line/Polygon
In much the same way you can buffer vector features in ArcGIS for Desktop, QGIS gives you a very simple method for creating buffers around points, lines and other polygons. You may enter a manual buffer distance, or choose a value from a field inside the attribute table. The Buffer tool can be found under the Vector dropdown > Geoprocessing Tools > Buffer(s).
- Clip/Extract Data
The function I probably used the most as an analyst was the ability to clip subsets of data from a larger dataset. I used this to filter data by area of interest, or to simply cut unmanageable datasets into smaller, more manageable ones. QGIS makes it easy by exposing it as another tool in the Vector dropdown > Geoprocessing Tools > Clip menu.
- Export as JPEG
One of the most common ways analysts and cartographers distribute their results is to export their map as a graphic. The resulting graphic can then be plotted for a wall map, attached to an email, or included as part of a larger PowerPoint briefing. Exporting a graphic from QGIS is as easy as selecting Export as Image from the File dropdown > choosing a name and format for your exported graphic > and then deciding where you want to export the image to disk.
- Define a Layer’s Coordinate System
Sometimes an analyst is given data which has no coordinate system defined. This is problematic for any type of measurements, analysis or coordinate notation needed for that given dataset. Luckily, QGIS makes defining a coordinate system pretty simple. Just select the layer you want to define in the table of contents. Then use the Layer dropdown to select the Set CRS of Layer(s) option. Next, just choose the correct coordinate system for your layer, and hit OK to apply.
- Reproject a Vector Layer
Often times it is necessary to change the projection of a vector layer to ensure accuracy in measurements and analysis. QGIS exposes this functionality in the Save As… function for a layer right from the table of contents. Right-click the layer you want to reproject, select Save As…, and under the CRS section select Selected CRS. This will enable the Browse button which gives you a range of coordinate systems to choose from. Just hit OK when you are done and QGIS will export a new layer with the updated projection.
- Convert Raster to Vector
One of the more common actions to perform against a raster dataset is to convert it to polygons. This can be useful when you want to use a raster dataset inside a weighted overlay analysis, site selection, point in polygon analysis and more. QGIS calls this function Polygonize, and it can be found under the Raster dropdown > Conversion > Polygonize.
Here is the really cool part…all of the tools listed above are available inside of the Processing Framework inside of QGIS. This means those individual tools can be orchestrated into seamless workflows, used from the Python console, or run in batch. So if you are like me, and spent copious amounts of time encapsulating tradecraft into ModelBuilder models and Python scripts using ArcPy, you will be happy to know you can do a similar thing inside of QGIS as well.
My goal here is not for you to replace all of your desktop GIS instances with QGIS. As I mentioned before, there are still use cases where more fully featured GIS applications do make sense. But for that large majority of users – the 80% – I truly believe there is a better, more cost-effective answer. And if your organization is thinking about transitioning to a hybrid GIS architecture, you should consider adopting QGIS as a core part of your hybrid GIS migration strategy.
Stay tuned for part 2 of this series which will focus on some more advanced capabilities which are exposed as plugins for QGIS.