You are on page 1of 42

JNCC Report No: 542

QGIS Suitability Assessment

Claire E. Lush & Mike J. Lush

November 2014

© JNCC, Peterborough 2014

ISSN 0963 8901


For further information please contact:

Joint Nature Conservation Committee


Monkstone House
City Road
Peterborough PE1 1JY
www.jncc.defra.gov.uk

This report should be cited as:

Lush, C.E. & Lush, M.J. 2014. QGIS Suitability Assessment. JNCC report No 542
Summary
The Joint Nature Conservation Committee (JNCC) had used ESRI ArcGIS for a number of
years, during which time it had developed various tools, processes and infrastructure to
support its work. The organisation was considering whether Quantum GIS (QGIS) would be
a suitable alternative to ArcGIS that would also meet its data management requirements,
and required an expert review comparing the functionality available in ArcGIS with that in
QGIS. It was also necessary to consider any changes to JNCC’s IT infrastructure required
as a result of implementing QGIS, as well as the associated costs.

A list was provided by JNCC detailing the functionality in ArcGIS that was considered
essential, desirable or possibly required in the future. This list was used as the basis for an
assessment of functionality within QGIS. Difficulties in this assessment arose where no
direct comparison was possible, where functions behaved subtly differently, where almost
identical results could be obtained through different means and where ArcGIS specific
concepts applied that were not replicated in any other GIS. There was also no clear
definition of QGIS functionality, which could be seen to include the functionality of a range of
other open source GIS or spatial tools with which it integrated. Additionally, the assessment
was not exhaustive, due to the wide ranging functionality of QGIS, its plugins and associated
spatial tools.

Each item within the list was assessed to determine whether it occurred within QGIS and
associated software, or where relevant whether the same results could be attained using a
different process. Functionality was recorded as occurring in full, in part, through a plugin,
through associated GIS and spatial tools, through configuration, or through development.
ArcGIS specific functionality replicated by no other GIS was regarded as not relevant.
Additional notes were provided where they were considered informative.

Important differences between ArcGIS and QGIS included:

• the range and types of file formats that could be edited natively. In particular,
proprietary ArcGIS data formats such as map documents (MXD), layer (LYR), ESRI
TIN, ESRI grid, grid stacks and raster attribute tables could not be used in QGIS.
Additionally, key data formats such as file and personal geodatabases could be read
and saved by QGIS, but not edited;
• more limited CAD file support in QGIS;
• ArcGIS specific feature types that were not supported by QGIS, such as annotations
and graphics, coverages, raster mosaics, representations, subtypes and workspaces;
• ArcGIS functionality fully absent in QGIS, including the ability to create 2D or 3D
graphs and group attribute editing;
• ArcGIS functionality partially absent in QGIS, including snapping types, vector
transformation types, topology rules, and advanced editing, feature management,
spatial statistics and raster conversion tools;
• collections of specialist functionality in ArcGIS that appear to be absent from QGIS,
such as the cartography tools and coordinate geometry;
• a more limited number of map layout export formats in QGIS;
• metadata management functionality was extremely limited in QGIS;
• QGIS Browser is much more limited than ArcCatalog;
• no QGIS equivalent of the ArcScan extension to ArcGIS;
• functionality in Spatial Analysis was only partially met by QGIS and associated GIS
and spatial tools;
• very limited 3D functionality within QGIS compared with 3D Analyst.
Functionality within ArcGIS with equivalents in QGIS included most basic functionality, many
of the analysis and processing tools, the geoprocessing toolbox, ArcGIS for Server, ArcGIS
online, raster catalogs and raster colour tables. Note that this assessment did not consider
functionality available through QGIS that was not also available through ArcGIS.

Implementation of QGIS within JNCC had a number of implications. Because QGIS is open
source there is no limit on the number of active copied that can be in use at any one time,
which may alone be sufficient to offset the loss of some functionality available in ArcGIS.
Some of the lost functionality was considered to be essential to JNCC’s operations, but in
the long term this functionality could be developed as either core QGIS functionality or
plugins. In the short term, implementation of QGIS could lead to a reduction in the number
of ArcGIS licenses required by JNCC, though the licenses to be retained would include the
more expensive Advanced licenses and plugins in order to gain benefit from otherwise
unavailable functionality. The costs of QGIS implementation have been estimated.

QGIS would best be delivered as a published application through JNCC’s Citrix system. This
would involve the establishment of a JNCC implementation of QGIS, including all of the
required plugins. It should then be possible to create a functional copy by moving all installed
files to another location and creating a single registry key. This should allow easy
publication via Citrix and allow updates or additions to be trialled prior to publication.

In order the gain the maximum benefit from QGIS, and to duplicate the functionality available
from ESRI geodatabases, the implementation of a spatial database server is recommended,
ideally PostGIS. This should be installed on a central JNCC server and used to store the
majority of vector data. Raster data may be best stored as GeoTIFFs, though the equivalent
of raster catalogs can be created in PostGIS or as external virtual rasters. Some data may
additionally need to be stored in other formats due to the requirements placed on them.
Existing spatial data will need to be migrated to these new formats. All data management
should be governed by data management guidelines, which will need to be created and
disseminated as part of the implementation process.

A trial of QGIS and PostGIS delivery and performance is recommended to determine how
easily they can be implemented through JNCC’s IT infrastructure, how well they function and
how quickly JNCC staff can acquire the knowledge to use QGIS effectively.

A limited number of ArcGIS licences would need to be retained to benefit from functionality
essential to JNCC’s work that is missing from QGIS. ArcGIS will also be required for
checking data and creating map documents for disseminating to partner organisations.
ArcGIS should be delivered to JNCC staff via Citrix or virtual machines, though it will be
necessary to restrict its use to reduce the risk of no licences being available when a member
of staff requires the functionality that does not exist in QGIS. Should the missing essential
functionality be developed for QGIS and the requirement for map documents be reduced
these ArcGIS licences may no longer be required.

JNCC staff will need training in QGIS use. Established foundation and intermediate courses
are available that would provide staff with the basic knowledge required, but it is clear that
some advanced training would be required to meet JNCC’s needs. These advanced courses
would need to be bespoke, so would involve costly development of training materials, but
once created would be cheaper to repeat.

Support available from the QGIS developers is limited, so a third party QGIS support
contract is recommended. There is also some functionality that is essential to JNCC that
would need to be developed for QGIS: INSPIRE compliant metadata functionality and an
equivalent to raster attribute tables. These would need to be funded by JNCC to ensure their
development.
Contents
1 Introduction .................................................................................................................. 1
1.1 User types within JNCC .......................................................................................... 1
2 Methodology ................................................................................................................ 2
2.1 Assessment approach ............................................................................................ 2
2.2 Limitations .............................................................................................................. 3
2.3 Review of infrastructure .......................................................................................... 3
3 Overview of QGIS suitability ....................................................................................... 3
3.1 Data types .............................................................................................................. 3
3.2 Data infrastructure .................................................................................................. 4
3.3 Projections .............................................................................................................. 6
3.4 ArcGIS functionality not available in QGIS .............................................................. 7
3.4.1 Software .......................................................................................................... 7
3.4.2 Proprietary data formats .................................................................................. 8
3.4.3 Feature types ................................................................................................... 9
3.4.4 Functions ....................................................................................................... 10
3.5 ArcGIS functionality with equivalent in QGIS......................................................... 10
3.5.1 Software ........................................................................................................ 10
3.5.2 Feature types ................................................................................................. 11
3.5.3 Functions ....................................................................................................... 11
4 Core functionality ...................................................................................................... 12
4.1 Mapping ................................................................................................................ 12
4.1.1 Map interaction .............................................................................................. 12
4.1.2 Map display ................................................................................................... 13
4.1.3 Page layout and printing ................................................................................ 14
4.1.4 Publishing and sharing maps ......................................................................... 14
4.1.5 Map Text........................................................................................................ 14
4.1.6 Cartography ................................................................................................... 14
4.2 Framework and Data Automation.......................................................................... 15
4.2.1 Application customisation............................................................................... 15
4.2.2 Data editing ................................................................................................... 15
4.2.3 Raster Editing and Vectorisation – ArcScan ................................................... 16
4.2.4 Multiuser geodatabase editing ....................................................................... 16
4.2.5 Spatial referencing of image data (georeferencing) ........................................ 17
4.3 Data manipulation and analysis ............................................................................ 17
4.3.1 Coverage geoprocessing ............................................................................... 17
4.3.2 Geoprocessing............................................................................................... 17
4.4 Data management and validation.......................................................................... 20
4.4.1 Data management ......................................................................................... 20
4.4.2 Attribute Validation ......................................................................................... 21
4.4.3 Topology ........................................................................................................ 21
4.4.4 Utility (Geometric) network analysis ............................................................... 21
4.4.5 Linear Referencing Routes ............................................................................ 21
4.4.6 Metadata........................................................................................................ 21
4.5 Data support and interoperability .......................................................................... 22
4.5.1 Raster data support ....................................................................................... 22
4.5.2 Document and data support ........................................................................... 22
4.5.3 CAD Support.................................................................................................. 23
4.6 Data ...................................................................................................................... 23
4.6.1 ArcGIS Online Services ................................................................................. 23
5 Review of Spatial Analyst and 3D Analyst functionality ......................................... 23
5.1 Spatial Analyst ...................................................................................................... 24
5.2 3D Analyst functionality ......................................................................................... 25
6 References ................................................................................................................. 35
Appendix 1 ........................................................................................................................ 36
Appendix 2 ........................................................................................................................ 36
1 Introduction
The Joint Nature Conservation Committee (JNCC) had been using ESRI ArcGIS for spatial
data management, analysis and map production for a number of years. During this time it
had developed various tools, processes and infrastructure to support its work, which were
designed to support the use of ArcGIS. Due to improvements in the availability, functionality
and packaging of open source GIS, JNCC were considering whether Quantum GIS (QGIS)
would be a suitable alternative to ArcGIS that would also meet its data management
requirements.

Comparison of functionality between GIS is not straightforward. Whilst ArcGIS and QGIS
often had comparable functionality in many cases a direct comparison was not possible. In
other cases similar functionality might behave subtly different or almost identical results
could be obtained through different means. There were many concepts specific to ArcGIS
that were not shared by QGIS, or by the majority of GIS.

In addition to these complexities, it was not easy to define what was considered to be QGIS
functionality. QGIS is essentially a combination of numerous modules, with the option to
readily add new modules. In addition, QGIS was highly integrated with other open source
GIS, such as GRASS and SAGA, as well as being able to draw on the functionality of
packages such as the statistical software R. Given the flexibility available and the ability to
access the source code and develop new functionality, it would possible to replicate most, if
not all functionality within ArcGIS, though this may generally be available by sacrificing user
friendliness.

JNCC required expert advice to untangle the complexities of this assessment and indicate
whether essential functionality would be available through QGIS. They also required an
assessment of the compatibility of QGIS with JNCC’s existing data and infrastructure, with
recommendations should a move to QGIS proceed.

The specific aims of this work were to:

• review a list of functionality that JNCC considered to be essential, desirable or


possibly required in the future, to determine whether it can be met by QGIS;
• consider any changes to JNCC’s desktop and network infrastructure required as part
of a proposed move to QGIS use, along with estimates of cost.

1.1 User types within JNCC


Key to the assessment of the suitability of QGIS was an understanding of the GIS user types
within JNCC. These were categorised by the level of expertise required, as it was thought
likely that some advanced functionality would be used by very few individuals. A breakdown
of user types is provided in Table 1.

1
Table 1 – Breakdown of GIS user types within JNCC. Some users considered themselves to be a
combination of user types and have been allocated proportionally to the relevant categories.
User type Definition No. users
Basic user Opens data, queries data and produces simple maps, 50.17
does simple digitising e.g. manual digitising or tracing
Advanced Uses advanced digitising tools e.g. digitising by distances 3.33
digitising and bearings, curves etc, COGO toolbar, raster editing
Advanced Uses the Cartography and Advanced Labelling tools 3.33
mapping
Advanced analysis Uses Spatial Analyst 11.17
Total 68

2 Methodology
2.1 Assessment approach
A full annotated functionality list was provided by JNCC, based around the functional groups
in ArcGIS. Related items of functionality were grouped and JNCC had scored each group
according to whether they were essential, desirable, possibly required in the future or not
required.

Each essential, desirable and possibly required item within the list was assessed to
determine whether it occurred within QGIS and associated software, or where relevant
whether the same results could be attained using a different process. This assessment
involved the following:

i. Review of the functionality within ArcGIS, to confirm how it worked and what it
produced, to ensure that the comparison was well founded. This was only required
for some of the less frequently used functionality.
ii. Review of identical or similar functionality within QGIS. This included:
a. An initial assessment to quickly determine whether the functionality was
available, wherever necessary flagging more difficult assessments for more
targeted investigation.
b. Clarification of the precise functionality required for complex or advanced
items, especially where JNCC’s use of the functionality is unclear.
c. Further consideration of unassessed answers, drawing upon the knowledge
of advanced ArcGIS and QGIS experts where required.
iii. Update of the table provided by JNCC, classifying each item by whether it meets
the requirement:
a. In full.
b. In part (where functionality is not completely identical to ArcGIS).
c. Through a plugin.
d. Through GRASS, SAGA or other functionality available through the QGIS
interface.
e. Through configuration of QGIS.
f. Through the development of new functionality.
Alternatively, some items of functionality were regarded as not relevant, as they
related to ArcGIS specific functionality that were not required in QGIS to meet
analytical and data management needs.
iv. Making notes where the comparison was not straightforward, as this more nuanced
information was sometimes more useful that the standardised assessment.

2
Following the initial review a consultation meeting was held with JNCC that helped to
highlight particular issues and concerns. These were resolved within the meeting and
clarified within this report.

2.2 Limitations
QGIS functionality is not always well packaged or documented. The assessment of QGIS
functionality therefore relied upon expert knowledge and web searches to locate similar
functionality. Inevitably neither were exhaustive. It is therefore not possible to conclude with
complete confidence that QGIS lacks a particular item of ArcGIS functionality, only that we
were unable to find anything that replicated it. We cannot guarantee that functionality is not
available in QGIS and linked open source tools that we haven’t tested.

It has also not been possible to test every item of functionality in QGIS. It is clear that in
many instances the precise algorithms used and outputs produced by QGIS and ArcGIS for
similar functions are not identical. Even if they had been tested it is likely that there would
still be uncertainty for some functions: whilst it would be possible to access the code and
deconstruct the algorithm for QGIS, ArcGIS is proprietary and it is therefore necessary to
rely upon the details that they release. We therefore cannot guarantee that QGIS
functionality performs and outputs exactly as similar functionality in ArcGIS.

Because it has not been possible to test every item of functionality we cannot be certain that
all documented QGIS functionality actually works. The nature of open source software
means that it is variable in quality and stability, which is true of some QGIS plugins although
core functionality has been well tested. Additionally, some of the documented functionality
were plugins that were considered experimental and are more likely to be unstable.

2.3 Review of infrastructure


JNCC’s IT manager provided a brief summarising the organisation’s IT infrastructure.
JNCC’s infrastructure and the possible mechanisms for delivering QGIS within the
organisation were further discussed at the consultation meeting, which helped to clarify
uncertainties. Other information was gained during the consultation covering the users
concerns about the implementation of QGIS and the potential impact upon working
practices. This information was used as the basis for the review of infrastructure and
subsequent recommendations.

3 Overview of QGIS suitability


The assessment of QGIS functionality was structured upon two spreadsheets provided by
JNCC, which were in turn based upon functionality as documented in ESRI’s functionality
matrix for ArcGIS, spatial analyst and 3D analyst. The results of the assessment are
provided in the same structure, with separate Excel spreadsheets provided in Appendices 1
and 2.

3.1 Data types


QGIS supports import and export of a wide range of file formats through the integration of
the GDAL OGR libraries, including vector, raster and CAD data, but the range of file formats
that can be edited are more limited.

3
The predominant formats used for editing vector data are Shapefile or spatial databases
such as Oracle, PostGreSQL, SpatialLite or SQL Server. Memory layers can be also used
for temporary editing.

The majority of raster processing tools in QGIS write to GeoTiff, as it is a full-featured public
domain format that stores geographic information with the image. QGIS can handle very
large GeoTiffs and rendering is generally quick. QGIS can convert GeoTiff to a range of
alternative formats using GDAL. Rasters can also be stored in spatial databases such as
Oracle or PostGreSQL, depending on database configuration, and there are plugins that
allow these rasters to be viewed in QGIS.

QGIS can also read other data such as Excel spreadsheet, DBF and text files. These data
formats can be opened as vector data and are shown as tables in QGIS. Databases such
as Microsoft Access can be opened via ODBC support, but it is essential to ensure that both
QGIS and the ODBC driver use the same processor architecture i.e. 32 bit QGIS must be
installed to connect to 32 bit Access.

3.2 Data infrastructure


Data processing and storage in ArcGIS relies upon:

• shapefiles;
• standalone rasters e.g. ESRI grid;
• feature classes in personal or file geodatabases;
• feature classes in enterprise geodatabases.

For QGIS feature classes cannot be stored in personal or file geodatabases for processing
and transferring data. The key formats used for data processing and storage in QGIS are:

• shapefiles;
• standalone rasters e.g. GeoTiff;
• feature classes in SpatialLite database;
• feature classes in enterprise spatial database e.g. PostGIS.

Shapefile
Shapefile is a standalone data format that can be readily opened by the majority of
commercial and open source GIS packages.

A shapefile is a single layer comprised of a set of linked files. The advantage of shapefiles is
that they can be transferred easily to another location or supplied to a third party, but it is
essential to ensure that all associated files are included. One disadvantage is that the data
structure is non-relational, so related non-spatial data cannot be stored.

Spatial processing of data in shapefile format requires GIS software and is less efficient than
for feature classes in spatial databases. QGIS does not read or write the ArcGIS xml
metadata file, but a metadata plugin can be used to generate metadata files.

Standalone rasters
Raster data is commonly supplied as graphic files. Spatial reference information can either
be stored in the file, such as GeoTiff, or stored in an associated world file. The majority of
raster formats can be readily opened by commercial and open source GIS packages and
graphics packages.

4
The advantage of standalone rasters is that they can be transferred easily to another
location or supplied to a third party. In QGIS the virtual raster tile (VRT) format allows
collections of rasters to be displayed and processed as a single raster.

SpatiaLite database
A SpatiaLite database in QGIS is a lightweight spatial database format that allows vector
and non-spatial data to be stored in a relational database structure in a single file (.sqlite,
.db). The entire database can therefore be easily transferred to another location.

Existing data would need to be imported into SpatiaLite or exported to be supplied as a


single layer, but these functions are possible using DB Manager in QGIS. Views can be
created to combine or filter layers for display.

The range of software that supports SpatiaLite databases is limited to recent versions of
commercial software, such as ArcGIS 10.2 or later, AutoCADMap 2013, FME and MapInfo
Professional 11.5.2 or later, so it has limited use for supplying data to third parties who are
not using QGIS, but it could be used internally for storing and transferring multiple vector
layers.

A graphical user interface (GUI) for database management and additional command line
tools are available to manage SpatiaLite databases outside QGIS if required (GAIA GIS
n.d.).

Spatial databases
Spatial databases allow spatial and non-spatial data to be stored in a relational database
structure and are recommended for the storage of multiple datasets to be used by many
users. The database may be commercial, such as Oracle Spatial or SQL Server 2008 or
later, or open source, such as PostgreSQL with PostGIS.

A spatial database can store multiple vector, raster and non-spatial datasets in a single
central location. Spatial databases support both attribute and spatial indexes and multi-user
editing. Views can be created to combine or filter layers for display.

Some key advantages of spatial databases are:

• functions and stored procedures can be defined and set to run as scheduled tasks.
This functionality can be useful to maintain data within the database;
• spatial processing can be undertaken through the database management GUI which
is often faster than processing through a GIS package;
• backups of the database can be scheduled using either the database management
GUI or a script set as a scheduled task.

Existing data would need to be imported into the database or exported to be supplied as a
single layer, but these functions are possible using DB Manager or the Browser window in
QGIS. It is also possible to export the full database so that it can be easily transferred to
another location.

A PostgreSQL database with PostGIS offers the highest level of integration for QGIS when
compared with Oracle Spatial or SQL Server, as it can be managed using DB Manager. It is
the preferred database for many QGIS users, so sample scripts for performing spatial tasks
are often provided in PostGIS syntax. In addition, there are supplementary schemas,
functions and plugins available to support raster, routing and topology data, as well as
versioning.

5
3.3 Projections
Both ArcGIS and QGIS use the PROJ4 projection definitions, but this does not guarantee
that projections will be identical between QGIS and ArcGIS. This may be due to:

• rounding errors due to the precision of the parameters. For example the scale factor
for British National Grid is rounded to 6 decimal places in ArcGIS, whilst it is 10
decimal places in QGIS;
• erroneous parameters for a specific projections;
• differences in the algorithm and parameters used to transform data.

QGIS can reproject layers in different projections so that they can be displayed in the same
map. By default the preferred EPSG transformation is used when ‘on-the-fly’ reprojection is
used, but the options in QGIS can be configured to ask which datum transformation to use
whenever data in a different projection are loaded. When a transformation is selected QGIS
shows the EPSG transformation code. This code can be compared with the well-known ID
(WKID) of the required transformation in ArcGIS using the geographic transformations
document (ESRI 2012). There is an option to save the selected transformation as the
default.

For GPS data that needs converting to British National Grid, Ordnance Survey recommend
using the OSTN02 corrections. The NTv2 binary file (.gsb) can be downloaded from the
Ordnance Survey website (Ordnance Survey 2014) and placed in the QGIS proj folder for
use with the corresponding transformation in QGIS.

3.4 Links to other open source GIS


QGIS has strong links to other open source GIS, such as GRASS and SAGA, plus other
tools with spatial functionality. These software components are either installed as part of the
QGIS install or can be configured to work with QGIS, which allows QGIS to draw upon
existing processing libraries, rather than necessitating the development of QGIS functions
that undertake the same process.

These functions are available through the QGIS Processing Toolbox, with links to full
GRASS functionality provided via the QGIS GRASS plugin. Whilst the functions in the
processing toolbox can be directly implemented on any data open within QGIS the GRASS
toolbox requires that data are first translated to GRASS format.

6
Figure 1 – the QGIS Processing Toolbox, showing functionality available from other open source
spatial tools.

Figure 2 – the QGIS GRASS plugin toolbar and dialogue.

3.5 ArcGIS functionality not available in QGIS


This section summarises the software, proprietary file formats, feature types and functions
that are specific to ArcGIS where similar functionality does not exist within QGIS.

3.5.1 Software

ArcScan
ArcScan is an extension to ArcGIS that allows manual or automated vectorisation of raster
data. There are tools in QGIS that will automatically convert an entire raster to vector, but

7
there are no utilities for editing rasters. An alternative for editing rasters would be to use the
raster editing interface through the GRASS GUI.

3.5.2 Proprietary data formats

All software uses proprietary data formats that are optimised for their storage and processing
requirements. The following proprietary data formats in ArcGIS cannot be read by QGIS and
would therefore require conversion to an alternative format.

Map document (MXD)


QGIS uses an extended markup language (XML) document with a .qgs file extension to
store this information. The existing MXD files could be converted using the MXD2QGS
toolbox for ArcGIS 10 that is available online 1. This tool has not been tested by exeGesIS
but due to differences between ArcGIS and QGIS we expect that the resulting QGIS project
files may require manual modification and layouts are unlikely to be converted.

Layer (LYR)
This format cannot be converted directly. A workaround would be to load the layer file into
ArcMap and use the ArcMap2SLD tool (Weiser n.d.). This tool will convert most basic styles
but some manual modification will be required. The data can then be opened in QGIS and
the SLD file loaded. A QGS layer definition file (.qlr) can be saved if required.

ArcView Legend (AVL)


This is a deprecated ESRI style format that cannot be converted directly. A tool written in
Java does exist online to convert AVL to SLD (Poth 2011) but this has not been tested by
exeGesIS. An alternative workaround would be to style the layers using the AVL file, then
use the ArcMap2SLD tool as for a layer.

Published map file (PMF)


This is an ArcGIS proprietary format that can only be created using the Publisher extension
in ArcMap and read using ArcReader. ArcReader could still be used to open existing files as
it is free but no new files could be created.

Packages
Layer and map packages are zip files containing a map document or layer file and its
associated data. These files should be unpacked and the map or layer file converted for use
in QGIS.

Geodatabases
Personal and file geodatabases can be read using QGIS and layers can be saved to a file
geodatabase, but these formats are not supported for editing. For QGIS spatial databases,
such as Oracle, PostGreSQL and SQL Server, provide a suitable feature-rich replacement
for geodatabase and support multi-user editing.

Grid stack
This is a set of overlapping grids used by ESRI for multivariate analysis. For use in QGIS
these stacks should be exported as multiband raster images in GeoTiff format.

Raster attribute tables


Raster attribute tables are stored in dBase file (DBF) format, and allow multiple attributes to
be stored for each cell. They are not currently supported in QGIS but there is a feature
request to add this functionality in future.

1
https://sites.google.com/site/lumtegis/files/Mxd2Qgs.zip

8
Smart Data Compression (SDC)
SDC format is used for the data and maps supplied with ArcGIS. Any data in this format
must be exported to shapefile or geodatabase for use in QGIS.

Triangulated irregular network (TIN)/Terrain


These formats are both based on TIN format and are not used by either QGIS or GRASS.
This data must be converted to a raster data format for use in QGIS.

ArcIMS service
The data provided by these services is in a proprietary format that QGIS cannot read
directly. OpenLayers does support this format so it may be possible to develop the
OpenLayers plugin or a separate tool to add an ArcIMS service to the map.

3.5.3 Feature types

The following feature types are present in ArcGIS but are not replicated in QGIS. Suggested
workarounds are given where possible, but development may be required.

Annotations and graphics


ArcGIS allows annotations and graphics to be stored either in the map document or a
geodatabase. QGIS does have some annotation tools for adding simple callout boxes to the
map but the ability to customise these annotations is limited. Some of this functionality could
be replicated manually if the Memory Layer plugin is enabled using:

• point memory layer set as invisible with dynamic labels to replace text;
• point, line or polygon memory layers to replace graphics.

Coverages
Coverages are specific to ArcInfo and there is no equivalent format available in QGIS. A key
characteristic of coverages is that the data structure ensured that topology was maintained.
Existing coverages can be opened in QGIS, although text will be imported as points.

Most of the functionality available in ArcGIS for coverages is available for vector data in
QGIS. Spatial topology for a layer can be maintained by enabling ‘topological editing’ whilst
digitising. PostGIS has a topology schema for vector data, however the tools to edit these
layers in QGIS are currently limited.

Feature classes for labels


In ArcGIS it is possible to have multiple label styles for a single layer using queries to identify
feature classes. QGIS has a rule-based renderer for symbology but currently allows a single
label style per layer. There is a feature request for this functionality 2. As a workaround
additional fields can be added to the table and data defined labelling used to customise the
style for each label.

Raster mosaics
Raster mosaics were introduced in ArcGIS 10 as a replacement for raster catalogs. They
are combined datasets that allow data to be searched as a catalog and treated as a raster
layer for geoprocessing.

Relationship classes
Relationship classes are created by ArcGIS to define table relationships in geodatabases.
Similar functionality can be achieved by storing data in a spatial database and defining

2
https://hub.qgis.org/issues/3843

9
relationships and constraints for the database tables, but tools to create relationships
interactively from QGIS would need to be developed if required.

Representations
Representations are stored in a geodatabase and are created by the cartography tools so
that a feature may be represented differently according to rules without altering the
geometry. There is some capability in QGIS to alter the styling of objects according to
specific criteria using rule based rendering and styles can be saved to PostGIS so that they
can easily be reused by all staff.

SubTypes
ArcGIS allows subtypes to be defined for a layer. Domains may be specified for each
subtype to ensure valid data is entered. There is no concept of subtypes in QGIS, but for
digitising the layer could be split using a filter and different domains assigned in the layer
properties.

Workspaces
A workspace is an ArcGIS concept that refers to a collection. This may be either a folder or
geodatabase. ArcGIS has a number of functions for managing workspaces that are not
present in QGIS. For files these functions are not necessary. For spatial databases it is
expected that these functions are managed through the database interface.

3.5.4 Functions

ArcGIS contains some collections of specialist functionality that do not seem to be replicated
within QGIS or known plugins. These functions are probably used by a minority of users
doing advanced digitising and advanced mapping.

Cartography
ArcMap Standard and Advanced have a suite of cartography tools that allow the user to add
geometric effects to features without altering the underlying geometry. These effects are
stored in a geodatabase as representations. Development of similar functionality in QGIS
would require significant development.

Coordinate geometry
Coordinate geometry is used for digitising surveyor plans that show the location of features
relative to each other. Each item within the network is either a point or a line with two
vertices. The basic functionality of plotting using azimuth and distance is available but there
seems to be no capability to adjust distances based on the projection. Development of the
full functionality available in ArcGIS would probably require a COGO schema with
associated functions in a spatial database.

3.6 ArcGIS functionality with equivalent in QGIS


This section summarises the software and feature types that are specific to ArcGIS where
similar functionality does exist within QGIS and highlights key differences.

3.6.1 Software

ArcGIS for Server


ArcGIS for Server provides a fully-featured 64-bit GIS server that can be installed on a web
server or in the cloud. It provides a range of services including web map services (WMS),
web feature services (WFS), editable WFS (WFS-T), geocoding, geoprocessing and printing.
ArcGIS for Server allows resources to be secured to limit access to particular users. It also

10
includes ready to use mobile and web applications including ArcGIS Online, Portal for
ArcGIS map viewer and ArcGIS Viewer.

QGIS Server provides a far more limited range of functionality. It is a 32-bit GIS server that
runs using Apache web services. It can be installed locally or on a web server and provides
WMS, WFS, WFS-T and WCS services. An associated Web Client is available that displays
maps online in an interface similar to QGIS Desktop and allows maps to be printed. There
are limited details on securing the server to limit access to particular users.

As QGIS Server is a 32 bit server it is likely to be slower than ArcGIS for Server, particularly
if there are large numbers of external users. It has limited options for securing the server
and does not offer processing capabilities 3. An alternative would be to use other open
source GIS servers with more features e.g. GeoServer.

ArcGIS Online
ArcGIS Online provides a service and an application programming interface (API) to set up a
custom website and publish data online. This service includes base maps and reference
layers. In QGIS either QGIS Server with the QGIS Web Client (see above) or QGIS Cloud
can be used to publish maps online.

QGIS Cloud is a hosted service. The cost of the package per month is based on the level of
data storage required and whether the client wishes to customise the page with their own
logo and styling. For QGIS Cloud it is recommended to use the Open Layers plugin, which
provides Bing, Google and Open Street Map web services as base maps, but does not
include reference data.

3.6.2 Feature types

Raster Catalogs
Raster catalogs can be managed or unmanaged and store a link to the raster and the raster
footprint in a geodatabase table. They allow rasters to be searched and displayed. In QGIS
there are two features that replicate parts of these functions:

• Tile Index
A tile index layer is a shapefile that contains the image name, path and footprint.
There is a Tile Index Viewer plugin that allows images to be opened from the tile
index layer, similar to opening layers from a raster catalog in ArcGIS.

• Virtual Raster Tiles (VRTs)


A VRT is an XML file that lists the file path and extent for each of the input layers.
The VRT can be opened as a single raster layer as for a raster catalog, but can also
be processed as if it was a single raster similar to a raster mosaic. Any modifications
require a new VRT file to be created. To improve rendering speed for large VRT
files, overviews or pyramids can be created as external files.

3.6.3 Functions

Raster colour tables


ArcGIS has functionality to create, edit and remove raster colour tables for single band
rasters. This allows the colour styles to be stored within the raster metadata. QGIS will
display data using a pre-defined colour table by selecting the Paletted symbology by default.

3
3Liz were working on server-side processing using PyWPS in February 2014.

11
An alternative approach in QGIS is to thematically display the raster using the Pseudocolor
symbology. This provides options to create a colour map using colour ramps or manually
assign colours. The configuration can be saved to a QGIS style file so that it can be re-used
for other layers. Colour tables can also be created and removed in GRASS, but there is not
a tool in the Processing toolbox at present.

4 Core functionality
This section summarises the similarities and differences in the core functionality between
ArcGIS and QGIS. The spreadsheet containing the full assessment for each element of core
functionality can be found in Appendix 1 – Core Functionality. This section has been
structured using the worksheet names and headings to assist with cross-referencing, so
there is some repetition where similar items were repeated in different worksheets.

Where a function depended upon ArcGIS specific functionality that was not available in
QGIS (section 3.4) it is not summarised in the following sections, unless an alternative or
work-around for that specific function was available.

4.1 Mapping
4.1.1 Map interaction

Map Navigation
Map navigation in QGIS generally matches the functionality available in ArcGIS, but a few
elements of non-essential functionality are not present. For example it is possible to rotate
the map in the print composer but not in the main window.

Queries
The majority of query functionality is available in QGIS, but there are some minor differences
as some of the functionality is more limited. For example:

• only the active layer in the table of contents is selectable but the layers returned by
the Identify tool in top down mode can be configured;
• select data by location has more limited options: contains, intersects and is disjoint.

Tables
Basic table functionality to select records, copy records and replace values is available, but
some useful functionality is missing, including:

• the right-click menu to zoom, pan, flash, select and identify features. Some of this
functionality is available for selected records via buttons in the table window, but not
for a single record;
• the ability to highlight selected records in the table. It is possible to highlight a record
from the Identify dialog, but not through the table window;
• customisation of the table, such as reordering or sorting by multiple columns. The
table can be sorted by a single column only.

Graphs
There is no functionality in QGIS to create 2D or 3D graphs, although data diagrams can be
shown as symbology (see section 4.1.2). Matplotlib in Python can be used to create graphs,
but an interface would need to be developed.

12
4.1.2 Map display

General mapping
Basic functionality including transparency and display scales can be configured for each
layer. The map can be visualised on a specific date using the experimental Time Manager
plugin but testing would be required to determine similarity to the ArcGIS time functionality.

ArcGIS has several types of grid that can be created. QGIS will add a grid to the map as a
decoration using the map units, so this functionality is similar to either a graticule or a
measured grid depending on the projection. Reference grids are not supported but are likely
to be used less frequently.

Tabular data
The majority of basic functionality for tabular data is at least partially available, but statistics
are only available using the Statist plugin to show basic statistics for a single field and
sorting is limited to a single field. There are no options in the edit widget to specify a format
for numeric fields and it is not possible to create charts or reports for a table.

Vector data
Most functionality for vector data is available, although it is not possible to assign a selection
colour to each layer. Symbology cannot be fixed to a specific scale, but a similar effect can
be achieved by specifying the size in map units. Most thematic classifications are available
through configuration, except dot density as this requires a derived layer to be generated,
but there is no interactive histogram.

Symbology
The style settings in QGIS match most of the functionality available in ArcGIS, but the
predefined symbols are more limited. There is no built-in option for a halo, but this can be
replicated manually by defining an additional marker below the original marker.

Symbols in QGIS can be based upon fonts or scaled vector graphic (SVG) files. Additional
predefined symbols and user-imported fill patterns can be applied, but these are based upon
SVG files instead of graphic files.

Elevation surface display


Elevation surface display is limited to digital elevation models (DEMs). DEMs displayed
based upon elevation or hillshade can be calculated using GDAL and added as a separate
layer.

Raster data display


Raster data can be displayed using either multiple bands or a single band. There are
options available to define the algorithm, resampling and classification methods used to
display rasters but they are generally more limited than in ArcGIS. For example, the
pseudocolour symbology can use discrete values, but there is no tool to list all unique
values.

Raster layer statistics will calculate statistics for the whole layer and save it to an output file.
Layer statistics for the image are also shown in the layer metadata, but there is no option to
save current display statistics.

13
4.1.3 Page layout and printing

Map elements
The majority of map elements are available, except OLE objects and reference grids, but
some elements require configuration. For example neatlines cannot be added automatically
around objects but rectangles can be added. A grid can be added in map units as for map
display (section 4.1.2). HTML objects can be added to display formatted text.

Export formats
Most graphic export formats are available, except graphic interchange format (GIF). Export
to enhanced metafile (EMF) and encapsulated postscript (EPS) are not supported. These
formats are often used to export scalable images for printing and so developing them may
be useful. For Adobe Illustrator an alternative method would be to export to portable
document format (PDF) or SVG, or print to postscript (PS), then import into Illustrator.

4.1.4 Publishing and sharing maps

Creating dynamic maps


Most of the functionality in this section is specific to ArcGIS for Server and not relevant to
QGIS. Maps can be published to QGIS Server by copying the project document to the
server. The maps are displayed using the QGIS Web Client using layer symbology as
shown in QGIS Desktop.

Sharing maps, layers and data


It is possible to consolidate a map using the QConsolidate plugin, but the creation of
packages would require development. Maps could be shared using the QGIS Cloud plugin
(see section 3.5.1).

4.1.5 Map Text

Labels
The majority of label functions are available and labelling can be defined using attributes, but
the options for conflict detection and label placement rules are more limited than in ArcGIS.
It is possible to create a conditional label expression but QGIS is not currently able to assign
different label styles based on label classes or set advanced text formatting tags, but there
are open feature requests for this functionality.

Annotation
Annotation layers are ArcGIS specific, but QGIS does have annotation tools that create
simple horizontal callouts. These annotations are stored in the project file. Annotation
values can be taken from map layers using the Form annotation or given custom styling
using the HTML annotation.

Advanced Labelling
Advanced labelling is generally limited and may require development. Font reduction is not
automatic but data defined labels could be used to reduce the size of individual labels. Word
and character spreading are available and labels can be placed on polygon boundaries, but
curved labelling is currently only available for polylines.

4.1.6 Cartography

Cartographic representations are specific to ArcGIS but some of the cartographic editing
tools can be partially replicated by:

14
• altering symbology, transparency and visibility for specific features using rule-based
rendering;
• using the marker outline style to place point symbols along lines or polygons;
• using the Style Manager to modify line width, hatch size and orientation.

4.2 Framework and Data Automation


4.2.1 Application customisation

Application look and feel


The majority of this functionality is available in QGIS, but windows do not auto-hide. QGIS
can be translated into many languages but some translations, such as Chinese, are
incomplete.

Customisation
As QGIS is open source there are virtually no limits to how the package can be customised.
For most users, the interface is less customisable as toolbars can be rearranged but tools
cannot be arranged or new toolbars or menus created without programming. QGIS can be
extended by creating plugins in C++ or Python.

4.2.2 Data editing

General editing
Most of the general editing functionality is available. QGIS does not have feature templates
to predefine editing tasks, but it would be worth investigating whether actions will reproduce
some of this functionality. QGIS has a single snapping environment, similar to ArcGIS
classic snapping, with a dockable snapping window.

Snapping types and tolerance


QGIS will snap to vertices, edges and intersections, but does not support the more
advanced snapping types in ArcGIS e.g. midpoint. Point and End snapping are possible
using vertex snapping as for ArcGIS classic snapping. Tolerance can be specified in pixels
or map units as in ArcGIS.

Geometry construction options


The majority of construction options are available using the experimental CADInput plugin
and the Autotrace plugin, but some advanced functionality such as tangent curves is not
available. Functionality to flip features and trim features to length is not available, but should
be relatively simple to develop.

Geometry creation tools


Point and click digitising is available in core QGIS and stream digitising is available using the
Freehand Editing plugin. A coordinate could be added in decimal degrees (DD) using the
experimental CADInput plugin if the projection unit was degrees. The remaining tools are
not available, but are relatively specialised and not likely to be required by the majority of
users.

Feature manipulation tasks


All feature manipulation tasks are available, except splitting lines at intersections. Mirror
copies can be created using copy and paste but the advanced copy and scale tool would
require development. The Numerical Vertex Edit tool should be tested to determine whether
it modifies coordinate values correctly.

15
Attribute editing
QGIS does not have an equivalent to the attributes dialog that allows rows to be modified as
a group but the rest of the functionality is available.

Multipart features
Parts can be added and removed using the advanced digitizing toolbar, but it is not possible
to zoom to a single part. Vertices can be edited as for single part features. fTools has a
function to explode multipart polygons, but this function creates a new layer.

Map navigation whilst editing


Zoom to feature vertex or feature part is not available, only zoom to feature. Continuous
pan/zoom option is not available, but for QGIS this functionality is not necessary as the user
can either use the arrow keys or switch to the pan or zoom tools then resume digitising by
clicking back to the original digitising tool.

Vector data transformation


These functions are the equivalent of raster georeferencing for vector data and are therefore
rather specialised. Affine transformations can be performed using the either Affine
Transformation plugin or v.transform.points in the GRASS toolbox. The remaining
transformation types would need to be developed if required.

Generalisation
fTools will simplify line or polygon features using the Douglas-Peucker algorithm, whilst the
v.generalize function in the GRASS toolbox will perform more advanced smoothing using
various algorithms.

4.2.3 Raster Editing and Vectorisation – ArcScan

Although QGIS does not have a plugin that is similar to the ArcScan extension, it does have
some tools that can be used to vectorise raster data. The GDAL Polygonize tool and similar
tools in the GRASS and SAGA toolboxes will convert an entire raster to a polygon layer.
QGIS does not have a raster snapping environment for manual digitising. d.rast.edit could
be run through the GRASS GUI if raster editing is required, but the functionality available
within this package would require investigation.

4.2.4 Multiuser geodatabase editing

Geodatabases are not supported in QGIS, but multi-user editing is supported when editing
spatial databases such as Oracle, PostgreSQL or SQL Server. QGIS 2.4 does not appear to
have any versioning tools at present.

There was a plugin for older versions of QGIS (pre v2.0) called PG Version that allowed
versioning to be enabled for specified tables in a PostgreSQL database. From the available
documentation it appears that the versioning functionality did not follow an identical process
to that in ArcGIS, but it did offer similar functionality. It may be worthwhile to investigate this
plugin further to determine whether it met the requirements, as it may be more cost effective
to fund an upgrade to this plugin for QGIS 2.4 than developing a different approach.

Alternatively a simple approach may be to add database triggers to archive records


whenever changes are made to specific tables.

16
4.2.5 Spatial referencing of image data (georeferencing)

Tools
Most of the georeferencing tool functionality is available in QGIS using the GDAL
Georeferencer. Unlike ArcGIS the image is opened in a separate window so there is no
need to shift, rotate or fit image to display. Control points are added to the image and the
corresponding map location can be selected from the map in QGIS.

Transformation methods
All of the transformation methods are available except Adjust, as that transformation is a
combination of polynomial and TIN interpolation specific to ArcGIS.

Save Spatial Reference


For the majority of transformation methods a new dataset must be created, similar to
rectifying an image in ArcGIS. For linear transformations the GDAL Georeferencer has the
option to create a world file to store the spatial reference information.

The Georeferencer rectifies images in a separate window, rather than the main map window,
so shift, flip, rotate and fit functions are unnecessary. It doesn’t replicate the adjust
functionality in ArcGIS, but this is likely to be rarely used.

4.3 Data manipulation and analysis


4.3.1 Coverage geoprocessing

As stated in section 3.4.3, coverages are not supported in QGIS for editing. The majority of
the coverage geoprocessing tools are therefore not relevant to QGIS. Some of the
functionality is duplicated and will be covered in the next section.

The only tool that is not covered elsewhere and is available in QGIS is cleaning topology.
The Topology Checker tool allows simple rules to be defined and validated interactively in
QGIS. The GRASS toolbox has a v.clean function that performs a similar function or
alternatively PostgreSQL tools could be used.

4.3.2 Geoprocessing

Geoprocessing is undertaken in ArcGIS through the toolbox. A similar processing toolbox is


now available in QGIS. The review of geoprocessing capability has focussed on
functionality available via the toolbox, unless it is specifically stated that a particular function
is only possible interactively. Some of the ArcGIS tools are combinations of existing tools
that could be replicated using a model to run the relevant functions sequentially.

Environment
The geoprocessing environment includes almost all of the functionality available in ArcGIS.
Looping models cannot be created with the Graphical Modeller, but could be added
manually if the model was exported as a Python script.

Supported scripting environments


Python is the only scripting environment supported within QGIS. QGIS 2.4 uses Python 2.7.
It is possible to write plugins using either C++ or Python.

General data management


Copy, merge and calculate values are possible through the processing toolbox. It is possible
to append and sort data interactively, but there is no corresponding tool. There is a feature

17
request for the ability to rename and delete files through QGIS Browser, but it is unclear
whether corresponding tools will also be added to the toolbox. Merge branch is not possible
with the Graphical Modeller, but could be done manually if the model was exported as a
Python script. Finding and deleting identical values would require development.

Data comparison
There is no comparable functionality in QGIS. It is possible to perform comparisons in
PostgreSQL with the exception of file comparison, but an interface would need to be
developed.

Table management
Rows can be copied using the ‘save selected features’ tool and deleted interactively, but the
remaining tools are not available. These tools in ArcGIS are specific to geodatabase tables.
Equivalent tools in QGIS could be developed to perform these functions for spatial
databases. It is possible that some of these functions could be executed using the PostGIS
execute SQL tool, but an appropriate SQL query would be required.

Editing
The densify, generalise and snap tools are available, but some of the options are more
limited that in ArcGIS. The remaining tools would require development. A Python script is
available online to flip lines, so a tool could easily be created.

Field management
The majority of this functionality is available in the toolbox. Default values in both ArcGIS
and QGIS can only be defined for database tables. It is possible to assign a default value for
PostGIS or SpatialLite tables interactively through the DB Manager. The Field Calculator
tool can be used to convert time fields and calculate end times, so a simple model could be
developed, but transposing fields would require development.

Feature class management


Fishnets and random points can be created using the processing toolbox. Integrate could be
recreated using v.in.ogr.qgis with an appropriate snapping tolerance. This could possibly be
created as a Python script.

Feature management
Most feature management functionality is available in QGIS. The following functions are not
currently possible:

• XY to line;
• dice;
• minimum bounding geometry;
• feature envelope to polygon;
• split line at point.

Generalisation
Dissolve, eliminate and eliminate polygon part are possible using the processing toolbox.
Most of the cartography tools are not available within QGIS, with the exception of the
simplify line and polygons tools. Similar functionality to smooth polygon should be possible
using a model, but the remainder would require development.

Projections and transformations


Most of this functionality is available interactively in QGIS, but not through the toolbox.
There is not a tool for conversion of degrees decimal to DMS, but a model could be created
to do this using the Field Calculator.

18
Raster management
Most of the raster management tools are available in the toolbox, but some functions can
only be performed manually, such as export raster catalog paths and delete raster catalog
items. The following functionality is not available:

• build pyramids and statistics;


• export raster world file, but this is unnecessary for GeoTiffs as they contain spatial
reference information;
• repair raster catalog paths;
• split raster.

Raster mosaics
Raster mosaics are not supported in QGIS. Some of the functionality is possible using VRT
files in QGIS and has therefore been evaluated on this basis, but VRT files cannot be
created or edited using the toolbox.

Raster conversion
Rasters can be converted to and from the majority of formats supported by ArcGIS using the
Polygonize, Rasterize and GDAL Translate tools. The exceptions are:

• conversions to and from float format;


• conversion to point;
• conversion to polyline.

Raster transformation/projection
Most of the functionality is possible using the GDAL translate and warp tools, but the
required parameters are not available in the toolbox, so models would be required. The flip,
mirror and rotate tools would require development. Functions to flip and mirror rasters are
available in R.

Conversion
Conversion between most formats is supported using the OGR Convert Format tool.
Several functions import to geodatabase, but this is only possible interactively by saving to a
file geodatabase. Development would be required to export to CAD or export a whole map
to KML.

Layers and table views


It is possible to make the equivalent of a query table using a query to filter data in PostGIS or
SQL Server, but most of the other functionality is not possible through the QGIS toolbox.
Select layer by attribute or location is not completely replicated in QGIS, though similar
functionality should be possible using a memory layer.

Packing
There are no tools available in the toolbox to perform these tasks, as they rely on plugins or
functionality that would need to be developed.

Core analysis
Most of this functionality is available through the processing toolbox, but split and update
would require models to link the required tools sequentially. Two tools would require
development: multiple ring buffer and identity.

19
Spatial statistics tools
A significant amount of development would be required to match the functionality in ArcGIS.
Some functions are available in QGIS and SAGA but these tools do not fully match the
ArcGIS functionality:

• average nearest neighbour;


• mean centre;
• standard distance;
• ordinary least squares regression;
• geographically weighted regression.

Database management
Most of this functionality is not relevant, as it is specific to ESRI personal or file
geodatabases. The following functionality is also relevant to spatial databases, but there are
no tools within the QGIS toolbox as it is assumed that this will be undertaken using the
database management software:

• change privileges;
• compress;
• migrate storage.

Table joins
There are two tools in the toolbox that will create a join between tables. The output is a
temporary layer, so a tool to remove the join is not necessary as the source layers are not
affected.

Data indexing
Spatial indexes can be created interactively. Spatial indexes for shapefiles can be removed
by deleting the .qix file. For spatial databases it is assumed that attribute and spatial
indexes will be created and removed using the database management software.

4.4 Data management and validation


4.4.1 Data management

General
QGIS Browser is similar to ArcCatalog, but functionality to manage datasets is limited. It is
possible to create shapefiles and connect to spatial databases, but functionality to create
and manage feature classes in ESRI geodatabases is not supported.

Search for GIS data


Data in the Browser window can be filtered by name, but it is not possible to search GIS data
within QGIS.

Geodatabase administration
Data cannot be loaded into ESRI geodatabases, but data can be loaded into PostGIS and
new tables created through DB Manager. Update of RDBMS statistics would generally be
done through the database management software.

Geodatabase XML file import/export


All of this functionality would generally be undertaken outside of QGIS. Import and export of
XML would generally be done through the underlying database. Zip files can be created
through Windows Explorer or Z files can be created using GZip (.gz) or 7Zip (.7z). It is
possible to use GZip with PostGIS to export directly to zip or gz format.

20
4.4.2 Attribute Validation

Domains
The QGIS equivalent of domains can be defined in the value map for a field through the
layer properties window, but the domain categories cannot be saved to a table.

Relationships
Relationships can be defined between spatial database tables, but this would generally be
done through database management software.

4.4.3 Topology

The topology rules available in QGIS are limited to the rules required for snapping. Greater
topological control could be implemented through a fully topological data format, such as
GRASS or PostGIS. The experimental PostGIS Topology Editor plugin should allow control
of PostGIS topologies from QGIS, but the functionality is currently limited.

Topology can be validated in QGIS using the Topology Checker plugin, but this tool cannot
validate all of the rules that are available in ArcGIS.

4.4.4 Utility (Geometric) network analysis

There is generally no networking functionality built into QGIS. Most of the functionality that
is available is either in GRASS or PostGIS pgRouting using the pgRoutingLayer plugin.
Some additional functionality would need to be developed. Although pgRouting currently
appears to have more restricted functionality, development may be easier using the
pgRouting schema than using GRASS.

4.4.5 Linear Referencing Routes

The majority of this functionality seems to be possible using the LRS plugin, but this plugin
could not be tested within the limited timescale due to the need to set up a full network. It
was decided that this was not worth pursuing further as JNCC do not see an immediate
need for this functionality. Further investigation and testing should be undertaken by JNCC
if a requirement for this functionality arises in future.

4.4.6 Metadata

In addition to the basic layer metadata that is generated by QGIS for all layers, there are two
plugins in QGIS that will create and edit metadata. Both plugins are experimental and bugs
were encountered whilst checking functionality.

Metatools does not appear to be INSPIRE compliant and appears to work for shapefiles
only. Qsphere is INSPIRE compliant but the lookup tables are entirely in French and would
need to be translated. Qsphere can export XML data to ISO19139, but will not import from
any format. In order to use either of these plugins some additional development would be
required to fix bugs and ensure that the metadata created meets the UK GEMINI and
INSPIRE requirements.

An alternative approach would be to develop a plugin that would allow users to link to the
new UK Location Metadata Editor. This new online tool allows:

• creation of UK GEMINI 2.2/INSPIRE compliant metadata;


• files can be imported/exported, with some options on data format;

21
• all metadata are stored in a central location and automatically published;
• metadata file can be downloaded to the local file system.

Discussions with JNCC clearly suggest that they want to be able to keep easily viewed
metadata with the data, rather than in a separate location, so the UK Location Metadata
Editor will not meet their needs.

4.5 Data support and interoperability


4.5.1 Raster data support

Direct read of raster data


All of the raster formats listed for direct read should be opened using the OGR libraries,
provided the required additional libraries have been installed. It is not clear whether ESRI
band interleaved by pixel (BIP), ESRI band sequential (BSQ) and floating point raster (FLT)
can definitely be read, so these formats should be tested prior to switching to QGIS if
necessary.

Direct read and write of raster data


QGIS will read all of the raster formats listed except ESRI grid stacks and geodatabase
rasters, which should first be exported to alternative formats. The majority of raster
processing tools in QGIS write to GeoTiff only, but GeoTiff can be converted to alternative
formats.

Geodatabase raster management


The raster data type in PostGIS or Oracle could be used as an alternative to geodatabase
rasters. Creation, management and compression of raster data would generally be
undertaken in database management software. QGIS does not have an equivalent to raster
mosaics, although VRT format allows some similar functionality.

4.5.2 Document and data support

Map and Symbology files


There are equivalent files in QGIS which will allow layer styling and map projects to be
shared between users, but the ArcGIS formats are not supported (see section 3.4.2).

Direct read of vector and raster data


QGIS is very strong on reading a wide range of file formats, due to the integration of GDAL
OGR. Personal geodatabases can be read, but QGIS must be the same architecture as
Access i.e. it is not possible for 64 bit QGIS to work with the 32 bit Access ODBC driver or
vice versa.

Other than ArcGIS proprietary formats the only data format that is not compatible is ArcGIS
for Server vector services. ArcGIS for Server raster services could be added through the
REST service, but a tool would need to be developed to access vector data via the SOAP
service.

Direct editing of vector data


Editing of shapefiles is possible and is the default standalone format for vector data in QGIS.
Editing of personal and file geodatabases is not supported, but equivalent spatial databases
such as Oracle, PostGIS and SQL Server can be edited.

22
Direct read of other data
All other data formats can be read with the exception of ArcGIS proprietary formats,
including terrains, TINs and INFO files. Data can be read from Excel or DBF as vector
layers, but points cannot be created unless a tool is developed. A workaround would be to
export this data to CSV and import as delimited text specifying x and y columns. Both tables
and views can be opened via OLE DB/ODBC, but the ODBC driver architecture must match
the installed version of QGIS.

4.5.3 CAD Support

CAD file support


Data can be read from drawing exchange format (DXF) and MicroStation design file (DGN).
AutoCAD drawing files (DWG) may be supported if GDAL is built with DWG support, but will
not open the most recent file versions. Export to CAD is limited to saving as DXF.

Direct read of CAD data


Most functionality is available in QGIS. CAD layers are imported as separate layers in the
map, but the format of the layers in QGIS seems to be different to ArcGIS. Standard
AutoCAD attributes can be read, but as for ArcGIS the AutoCAD Map attribute tables are not
readable.

Editing with CAD data


CAD layers are treated as any other vector layer once they have been opened in QGIS so all
of this functionality is available.

Coordinate systems
The coordinate system for the CAD data can be specified as the data is imported, but this is
not saved with the CAD data. QGIS can perform an affine transformation to align CAD data,
but the data would need to be saved as a shapefile first, rather than storing the
transformation with the original file.

4.6 Data
4.6.1 ArcGIS Online Services

The OpenLayers plugin in QGIS provides services to add Bing and Google maps, as well as
data from Open Street Map, subject to the data provider’s terms of service. For the
remaining data alternative sources of similar WMS/WFS and data should be investigated.

5 Review of Spatial Analyst and 3D Analyst functionality


This section summarises the similarities and differences between the Spatial Analyst and 3D
Analyst functionality in ArcGIS and equivalent functionality in QGIS. The spreadsheet
containing the assessment for each element of functionality can be found in Appendix 2 –
Spatial/3D Analyst Functionality. This section has been structured using the worksheet
names and headings to assist with cross-referencing, so there is some repetition where
similar items were repeated in different worksheets.

Please note that the SAGA and GRASS raster calculators expect single band rasters and
unexpected results may occur if multiband rasters are used.

23
5.1 Spatial Analyst
Conditional
There are no specific tools for these functions, but they are all possible using the QGIS or
SAGA raster calculators so models could be created.

Density
Point and kernel density functionality are available using point inputs in the SAGA and
Heatmap plugins, but line and kernel density functionality using line inputs would require
development.

Distance
Cost surfaces, Euclidean distance and path distance can be calculated from point inputs
using GRASS, or some of the functionality is available in SAGA. The r.walk function in
GRASS should be tested to determine whether the outputs are equivalent to path distance in
ArcGIS. Corridors can be calculated using the raster calculator so a model could be
created. The remaining functionality would require development.

Extraction
Extraction by attributes, mask layer and rectangle are possible. Values can also be
extracted to points using SAGA. The remaining functions would require models or
development.

Generalisation
All of this functionality is available using GRASS or SAGA, but ArcGIS has additional
options.

Hydrology
Most of the hydrology functions are available using GRASS, SAGA or TauDEM. The Fill tool
would require testing, as the methodology used is significantly different to ArcGIS.

Interpolation
All of the basic interpolation methods are available in SAGA. Spline with barriers and the
topo to raster functions will require development. It may be possible to approximate the
output of the topo to raster tool using a combination of GRASS tools in a model.

Local
Cell statistics and combine are available in GRASS. Highest and lowest position can be
calculated using the layer of extreme value in SAGA. The frequency tools can be replicated
using the raster calculator, but Popularity and Rank will require development.

Map Algebra
Single output map algebra can be undertaken using the QGIS, GRASS or SAGA raster
calculators. Multi-output map algebra is no longer supported by ESRI in ArcGIS 10 so layers
would need to be generated as single outputs.

Math
The majority of math functions are available using the r.mapcalculator tool in GRASS, but no
combinatorial functions are available. Some of the functionality that is not available could be
developed using the image processing capabilities in Python and Numerical Python
(NumPy).

24
Multivariate statistics
Image classification in QGIS can be undertaken using the Orfeo or SAGA toolboxes. The
process used to classify images varies between tools, so each method should be tested to
determine the preferred approach.

Regression can be undertaken using GRASS or SAGA regression tools. The available tools
should be tested to determine whether these tools produce equivalent outputs from ArcGIS.

Neighbourhood
The Filter functionality is possible using SAGA. Focal statistics are available for circular and
square neighbourhoods, except minority and range. Block, line and point statistics would
require some development, as would focal flow.

Overlay
Both weighted overlay and weighted sum can be undertaken using the r.series tool in
GRASS, but the rasters would need to be reclassified before this calculation was performed.

Raster creation
GRASS can create all of the raster types listed. The extent and cellsize of the GRASS
region must be specified carefully to ensure that the cell size of the resulting raster is correct.

Reclass
Reclassify and reclass by ASCII file are possible using SAGA and GRASS respectively. The
remaining functionality would require development.

Surface
The majority of the surface functionality is available, but the configuration options are
generally more limited. The Cut/Fill tool would need to be developed but this could be done
using a model.

Zonal
Tabulate area and zonal statistics functions are available, but the statistics options are more
limited than those in ArcGIS. The remaining functions would require development, but are
likely to be used less frequently.

5.2 3D Analyst functionality


The 3D capabilities of QGIS are limited, so a direct comparison with the functionality in
ArcGIS 3D Analyst and ArcScene/ArcGlobe was not possible. It was agreed with the client
that the available functionality would be reviewed and used to provide an overview of the 3D
functionality available in QGIS.

QGIS2ThreeJS plugin
The QGIS2ThreeJS plugin creates an HTML page that displays a 3D model using the 3JS
javascript libraries. The browser used to display the resulting web page must support
WebGL and ActiveX and javascript must be allowed to run so that the model can be
displayed. Internet Explorer 11, Firefox or Chrome configured with appropriate settings
would therefore be required.

All layers that you wish to show in the model should be open in QGIS. The DTM and
additional vector overlay layers should be set as not visible before launching the tool,
particularly if 3D styling is to be applied as the current map view in QGIS is draped over the
DTM.

25
The interface includes options to extrude vector layers relative to the height of the DTM
using either a fixed or an attribute value. Once all of the options have been configured, the
3D model can be generated and will automatically display in the default browser. Tools in
the web page allow the user to rotate the model, zoom in and out and save the image.

The following example images were created using the QGIS2ThreeJS plugin and were taken
from tutorials online:

Figure 3 - 3D model of Tuerkenschanz Park with extruded buildings and trees (Graser 2014)

Figure 4 - 3D model of United States Geological Servuce DEM and imagery for Mount Rainier
(Information on More 3D Maps and Tips using QGIS2ThreeJS)

Both the image and the DTM are resampled to suitable resolutions for rapid display online,
so this would not be suitable for generating production quality graphics, but it may be
suitable for generating quick 3D visualisations of elevation data and associated raster and
vector layers.

26
NVIZ in GRASS
The NVIZ module in GRASS can be run from the toolbox in QGIS and offers the ability to
create 3D models, display vector data and volumes, export high resolution images and
create video fly-throughs in MPEG format.

A draped model can be created by loading the DTM and composite aerial photograph layer
or classified layer into NVIZ. The resolution of the resulting model depends upon the grid
resolution so the GRASS region must be set with care.

The interface for NVIZ has more functionality overall, but is not as simple to use as
QGIS3ThreeJS, so additional time would be required to determine appropriate workflows.

Globe plugin
The Globe plugin is available in the 32 bit version of QGIS 2.4 and is the QGIS equivalent of
ArcGlobe. User data from QGIS can be displayed on a 3D globe and extruded using height
attributes. This plugin is experimental and is not suitable for modelling bathymetry or
borehole data.

6 Infrastructure review and implementation


6.1 Key background information
JNCC employs approximately 180 staff, of which 77 are considered to be GIS users. These
staff are split between offices in Peterborough and Aberdeen, working on a mixture of
desktops, laptops and workstations, all expected to be running Windows 7 by 2015. Virtual
LAN core networks are implemented in both locations.

Both complete desktop and virtualised applications are delivered to JNCC staff via Citrix
Xenapp 6.5. ArcGIS is currently delivered to GIS users in Aberdeen or working from home
through a Citrix published application. This would also provide an approach to delivering
standard JNCC QGIS builds, with required plugins, to GIS users.

JNCC laptop users have VPN access to network resources.

JNCC operates a Microsoft Hyper-V virtualised platform based upon Windows Server 2012
that delivers virtual Windows 7 desktops. These are accessed by staff using remote desktop
connection services, including their own Windows-based home computers.

Desktop security applications used include Checkpoint Secure Client, McAfee Total Defence
Suite and McAfee 8.8. Some JNCC staff also use R Studio, which may be linked to QGIS.

6.2 QGIS delivery


Because QGIS is open source there are no limitations on the number of active copies in use
at any one time. QGIS is also entirely free. These are the main advantages of QGIS over
proprietary GIS, though there are disadvantages.

Based upon this review, it is clear that some functionality in ArcGIS is not available in QGIS,
including some functionality JNCC consider to be essential. QGIS is also almost completely
unsupported, with no channels that will guarantee issues and bugs are resolved. The
potential cost savings will also be partially offset by the cost of training staff to use the
software and the potential delays as staff have to relearn how to use frequently updated
QGIS versions and plugins. JNCC will need to assess whether the cost savings of reducing

27
their number of ArcGIS licenses will outweigh the costs and difficulties associated with
moving to QGIS.

Should JNCC decide to deliver QGIS, installation is simple. The standard QGIS installer
comes as an exe that also contains all required dependencies. Multiple QGIS versions can
be installed in parallel, so newly installed versions do not replace old versions. As a result
updating to a new version involves installing the new version and then uninstalling the old
version.

Alternatively QGIS can be installed using the OSGeo4W network installer


(http://trac.osgeo.org/osgeo4w/). This also installs a range of other open source geospatial
software, including many that are valuable to QGIS users. One advantage is the ability to
use the QSGeo4W installer to update any of these components, including QGIS itself,
without having to manually uninstall older versions. However, care is needed to ensure that
the intended version of QGIS is installed, which can be achieved through advanced install.

Released versions of QGIS are generally stable on release, having been extensively tested
during development. However, it there is often a delay between release of a new version
and plugins being updated to work with the new version, so it is often advisable to delay
updating QGIS or install parallel versions so that plugins are still available on the older
version. New versions also often include substantial changes to the layout and appearance
of QGIS, which may take users a while to get used to and may justify not installing every
version if the available functionality and stability is sufficient to meet user needs.

Once QGIS is installed, the installation of plugins generally requires no special windows
permissions, as most are simply downloaded DLL’s (though there may be plugins that have
additional external components).

It is recommended that JNCC deliver QGIS as a Citrix published application. It should be


possible to establish a JNCC implementation of QGIS, containing all required plugins, and
then copy all installed files to another location. There is one system registry key (QGIS
project class) that would need to be created when copying a QGIS install, but other registry
settings are not created by the QGIS installer. This implementation could then be published
via Citrix. This would also allow updates to QGIS or additions to the implementation to be
trialled before being published via Citrix.

It is recommended that all plugins required by staff are made available via Citrix, but that
only the most frequently used are enabled in the QGIS implementation. This will reduce the
number of icons and menu entries in QGIS, making it more accessible for users. Users that
require the more advanced functionality would be able to enable the relevant plugins each
time they use QGIS.

6.3 PostgreSQL and PostGIS


PostGIS (http://postgis.net/) is a spatial database extension to the PostgreSQL object-
relational database, both of which are open source. It is recommended because the spatial
functionality in PostGIS is superior to that available in Microsoft SQL Server, it is better
integrated into QGIS and its use will help JNCC to meet the UK Government Digital Service
Open Standards principles (Cabinet Office 2013). Storage of spatial data within a
centralised spatial database server will also ensure that all data are properly backed up.

PostgreSQL 9.3 or above should ideally be installed on a single centrally available server,
though if performance becomes an issue it may be sensible to have two synchronised
PostgreSQL servers in Peterborough and Aberdeen, for example through the Data Sync

28
tool. PostGIS can be installed immediately following install of PostgreSQL using the
Application Stack Builder, through which an initial spatial database can be created.

PostgreSQL can be configured to use Active Directory when it is built by using either SSPI or
GSSAPI authentication (PostgreSQL Global Development Group 2014), though this is not
straightforward. In addition, users need to be setup in PostgreSQL and PostgreSQL user
groups, which may be time consuming for IT staff. It may therefore be better to use
password authentication.

Microsoft SQL Server 2008 or later could be used instead, but is proprietary, cannot store
raster data and lacks some valuable functionality available within PostGIS, such as the
ability to translate data between coordinate reference systems. QGIS also lacks the
functionality to export data to SQL Server. Nevertheless, even if PostGIS is used, data that
needs to be kept in SQL Server, such as the Marine Protected Area database, may still be
viewed and edited in QGIS.

It should be noted that the only advantage of storing raster data in PostGIS, other than
centralisation and easier backup, is increased speed during analysis. The disadvantage is
that they dramatically increase the database size. For base map rasters and potentially
more generally it may be more appropriate to store them in a separate location as GeoTiffs.
These can still be catalogued in PostGIS, which can reference external raster files, allowing
them to be treated as a single layer in a similar way to VRT’s. Data saved outside of the
spatial database server must be in an appropriately backed up location.

6.4 ArcGIS delivery


Even if QGIS is adopted by JNCC it is clear that a limited number of ArcGIS licenses will be
required to ensure that some functionality that is lacking in QGIS can still be used. It is
possible that some of this advanced functionality will be developed for QGIS in the future,
but some ArcGIS use would be required in the short term. ArcGIS may also be useful for
checking data and creating map documents 4 before disseminating to partner organisations.
JNCC would need to decide how many users are likely to need ArcGIS or the relevant
extensions at any one time and determine the number of licenses required appropriately.

ArcGIS could be delivered via Citrix or virtual machines. Due to the restricted number of
licenses its use would need to be strictly controlled, so that staff do not use it for tasks that
could be carried out in QGIS at the same time as others have a real need for the advanced
functionality. This could either be done through a booking system or restricting access to a
smaller number of ArcGIS specialists. The latter may be preferable as staff change, as it will
not be necessary to train as many staff in the use of two GIS.

6.5 Data migration


Existing spatial data would need to be migrated to the spatial database server. In many
cases this could be done on an ad hoc basis, as long as data are being adequately backed
up, as data stored in shapefile format can be readily loaded into PostGIS via the QGIS
database menu.

Data in other formats will be harder to load into PostGIS. Smaller datasets can be exported
to shapefile format and imported as described above, but larger datasets may exceed the file

4
Note that it would not be possible to develop a tool for QGIS that could create an ESRI map document, as this
is a proprietary format.

29
size limits for shapefiles. A tool such as GISquirrel (http://www.gisquirrel.com/) may help
with this, as it has functionality to import any data open in ArcGIS into PostGIS. Additionally,
it can make the migration of any existing data in SQL Server to PostGIS more efficient,
though such data can be exported from SQL Server as text and then imported into PostGIS.
Alternatively it should be possible to further develop the PostGIS integration in QGIS to allow
easy import of a greater number of vector data types.

There are very few options available for loading raster data into PostGIS. The currently
recommended approach is to use the raster2pgsql command line executable raster loader
(PostGIS Development Group 2014). This gives flexibility to import multiple rasters with a
single command, but in the future it may be appropriate to have a more user friendly
interface available through QGIS, if import of rasters into PostGIS occurs frequently. Unless
absolutely required for analysis, it may be more appropriate to store raster datasets outside
of PostGIS.

6.6 Data management


Implementing both QGIS and ArcGIS will inevitable mean that clear data management and
version control protocols will need to be enforced. These protocols should aim to reduce the
risk of outdated versions of data being used where the most up to date version is in an
unexpected file format.

Since QGIS would be available to all JNCC staff all current versions of data should be
maintained in a QGIS editable format, most appropriately in a PostGIS database. Data to be
processed in ArcGIS will need to be migrated to an ArcGIS editable format, processed, and
then returned to QGIS format. The temporary ArcGIS versions could then be deleted.

It may nevertheless be necessary to maintain current versions in ArcGIS, where for example
data must be maintained in a specified ArcGIS format. Such data should be documented.

Some issues with versioning could be resolved through the use of a tool such as GISquirrel.
This allows ArcGIS to use and edit data in PostGIS, which would mean that ArcGIS could
process the data used by QGIS directly. However, this would only eliminate the versioning
issues associated with vector data processing in ArcGIS.

Data management processes will also need to be implemented in PostGIS, ensuring the
removal or archiving of old versions of data from the relevant spatial databases. The
versioning functionality available in PostgreSQL could also be used.

6.7 Initial delivery trial and performance testing


There are three key areas of uncertainty that could not be explored during this work:

• the ease with which QGIS can be implemented though JNCC’s IT infrastructure;
• performance of QGIS on JNCC’s IT infrastructure;
• how quickly JNCC staff can acquire the knowledge to use QGIS effectively.

The only way to resolve these uncertainties is to undertake a trial of QGIS delivery within
JNCC and performance testing, which will also provide the opportunity for users to learn to
use much of the functionality within QGIS. This is recommended as the next step towards
QGIS implementation within JNCC and should cover the following:

• set up and delivery of QGIS through Citrix;


• use of the standard QGIS install vs. the OSGeo4W network installer;

30
• set up of PostGIS, its use for data storage and its accessibility;
• data migration;
• initial development of data management protocols;
• any issues with firewalls, antivirus or anti spyware;
• raster (geotiff) handling performance;
• performance of specific key datasets within QGIS, such as the Defra Marine
Reference Dataset (DEM);
• print composer, to ensure it has the required functionality.

The trial could also be used to help estimate the number of ArcGIS licenses required by
determining the frequency of occasions where QGIS cannot undertake required tasks.

Clearly this has cost implications in terms of JNCC staff time. Most likely third party support
and training will also be required.

6.8 Training
Though QGIS and ArcGIS often function in very similar ways, there are differences. JNCC
staff will therefore need to be trained to use QGIS. Various foundation courses for QGIS
exist, which should provide staff with a good grounding in QGIS used. These will be
relatively inexpensive, since the costs of preparing training materials are spread between a
large number of trainees.

Beyond this basic training, much of the tasks carried out by JNCC staff in GIS will require
bespoke training. These will require the preparation of training materials to cover more
specialist aspects, some of which are likely to be very advanced and require time to present
clearly. This will increase the cost of training, but will allow the use of JNCC data and real
world situations to target the training to user needs. Repeat delivery of these training
courses will be more cost effective, as the training materials will have already been
prepared.

It is appropriate to have a number of separate training courses, targeted towards users that
require it, including:

• general foundation and intermediate QGIS use (two courses);


• advanced vector analysis;
• advanced raster analysis;
• network analysis and least cost;
• data management, processing and analysis in PostGIS;
• advanced data processing in GRASS, beyond the QGIS toolbox;
• introduction to Python scripting and use.

Other courses are also possible, such as semi-automatic land cover classification from
remote sensed data, but we do not anticipate that JNCC use of such functionality will be
extremely limited.

The use of multiple courses will ensure the each course is relatively short and there is
sufficient time to cover all of the material. This will help to avoid trainee exhaustion and
disillusionment.

31
6.9 Development
From the review and discussions during the consultation meeting it is clear that there is
some functionality that is required by JNCC that is currently absent from QGIS. Such
functionality will need to be developed, either by developing core QGIS functionality or
through the development of existing or new plugins. This will need to be funded, but we
recommend that the resulting code is made open source and any new plugins are added to
the QGIS repository.

It is probably initially acceptable to utilise the functionality available in ArcGIS where it is


lacking from QGIS, until such time as it is developed and implemented in QGIS.
Nevertheless, there are two elements of functionality that should be developed for QGIS as
a higher priority:

• Metadata functionality
The core metadata functionality and the plugins for QGIS are currently very weak.
JNCC requires functionality that attaches INSPIRE compliant metadata to the data
and is ideally automatically visible in the QGIS metadata tab. This will require
substantial changes to core QGIS functionality, but would potentially benefit a large
number of other QGIS users.

• Raster attribute tables


JNCC handle categorised raster data on a regular and frequent basis, so need the
ability to associate the raster values with their associated categories. The process of
assigning a category to an area can often be complicated, being based upon a
number of rasters and vector masks. A separate table therefore wouldn’t suffice, as
the categories to be very clear for ease of use. It should be possible to develop this
functionality as a QGIS plugin.

All new functionality will need to be clearly specified prior to development, which will require
discussion between JNCC and the development team. New functionality should be
thoroughly tested by both the development team and within JNCC, prior to full
implementation. Functionality can also be tested by a wider range of users by making
functionality available via the nightly build (for core functionality) or as an experimental
plugin.

All additional functionality, whether core or plugin, will need to be tested and updated to work
with future releases of QGIS. New release versions of QGIS are currently planned for every
four months. This potentially means that further development may frequently be required,
but may be mitigated by:

• core functionality being ‘adopted’ and maintained by members the QGIS


development team;
• frequency with which JNCC updates the version of QGIS used, as it will not be
necessary to update plugins to work with newer versions of QGIS if JNCC have no
intension of upgrading;
• inclusion of plugin updates in third party support contracts (Section 6.10).

6.10 QGIS support


As with any open source software, support for users of QGIS and its plugins is limited and
there is expressly no warranty in the standard GNY General Public License under which it is
distributed. Whilst there is an active QGIS support mailing list the members of the list are
not required to answer any queries posted. If a bug is reported in the software the

32
developers are under no obligation to fix it, and similarly do not need to develop extra
functionality requested. All core QGIS development is added to a centralised list, prioritised
and allocated to individual developers based upon the need perceived by the developers.

As a result, the QGIS team recommend commercial support contracts with third parties,
which is likely to be required by JNCC. The support contract should cover:

• user support and advice;


• IT support and advice;
• development call-off, which would allow for rapid fixing of bugs encountered or the
development of new functionality, though note that maintenance of functionality
developed for JNCC may suffer due to frequent changes in the support supplier.

It may additionally be appropriate to include the provision of training, as this will ensure that
the training provided is consistent and ensure that a long-term relationship can be
established between tutor and trainees.

It is also possible to fund the development of functionality through donating or funding the
developer directly. In some cases this may be appropriate for functionality already on the list
that is expected to meet JNCCs requirements.

6.11 Costs
The full costs of implementing QGIS within JNCC are difficult to assess, as much depends
upon the amount of time required for staff to set up and use the software, and the amount of
third party support and training required. It is also not clear what price JNCC would have to
pay for a reduced number of ArcGIS and licences, as any deal they currently have may
change. The cost estimates can be improved following the initial trial and performance
testing. Estimated costs for implementing QGIS within JNCC are shown in Table 2.

Table 2 – Estimated costs for implementing QGIS within JNCC.


Estimated cost
Item
One time Annual
QGIS licensing - £0
ESRI ArcGIS Desktop
- Unknown
Advanced licensing costs 5
ESRI Spatial Analyst costs - Unknown
QGIS and PostGIS Variable, depending upon
3-5 days of JNCC staff time
installation and delivery costs frequency of update
3-7 days for each JNCC staff
member involved, depending
Initial delivery trial and
upon how thorough the -
performance testing
testing is, plus third party
training and support costs
Development and
implementation of ArcGIS 1-2 days of JNCC staff time -
booking system
5-15 minutes per dataset on
Data migration -
average
Development of data Negligible internal costs in
2-3 days of JNCC staff time
management protocols keeping the guidance up to

5
ArcGIS installation and delivery costs are excluded, as these are already being met by JNCC.

33
date
Third party support - £500-£700 per day
Development of metadata
£11,500-£18,000 Variable, depending upon
functionality
frequency of QGIS update
Development of raster
£11,500-£18,000 and support arrangements
attribute table functionality

It is not possible to give a single estimate for JNCC staff training in QGIS, as much depends
upon whether a bespoke course is required and the level of expertise required. More
advanced courses will take more time to prepare and require a high level of expertise in the
area, which will increase the costs. Estimated costs for preparing and delivering the training
courses suggested in Section 6.8 at JNCC’s offices are provided in Table 3, along with the
likely duration of the course.

Table 3 – Estimated costs for training JNCC staff in QGIS use.


Estimated cost
Course Initial creation of Repeat delivery 6
materials and delivery
QGIS foundation (2 days) -7 £1,500-£2,000
QGIS intermediate (2 days) -7 £1,500-£2,000
Advanced vector analysis (1 day) £2,350-£3,300 £850-£1,200
Advanced raster analysis (2 days) £4,000-£5,500 £1,500-£2,000
Network analysis and least cost (2 days) £4,000-£5,500 £1,500-£2,000
Data management, processing and analysis £3,500-£4,800 £1,500-£2,000
in PostGIS (2 days)
Advanced data processing in GRASS £4,000-£5,500 £1,500-£2,000
(2 days)
An introduction to Python scripting in QGIS £2,350-£3,300 £850-£1,200
(1 day)

Optionally JNCC may also purchase GISquirrel to help with data migration and increase
compatibility of ArcGIS and PostGIS data. The cost of GISquirrel is currently £150 plus VAT
per license, though JNCC may be eligible for free licences.

We note that JNCC currently uses Fledermaus for 3D analysis and visualisation. Since
QGIS offers no replacement functionality JNCC would need to continue to use Fledermaus.
The costs of are not shown in the table, as JNCC already have to meet them.

6
Some re-familiarisation costs are associated with each new version of QGIS, but will not require additional
formal training.
7
It is assumed that existing QGIS foundation and intermediate courses will meet JNCC’s needs, so course
materials will already exist.

34
7 References
CABINET OFFICE. 2013. Open Standards Principles: For software interoperability, data
and document formats in government IT specifications [Online]. Available from:
https://www.gov.uk/government/publications/open-standards-principles/open-standards-
principles [Accessed September 2014]

ESRI. 2012. ArcGIS 10.1 Geographic and Vertical Transformation Tables [online].
Available from: http://resources.arcgis.com/en/help/main/10.1/003r/pdf/
geographic_transformations.pdf [Accessed August 2014]

GAIA GIS. n.d. spatialite-tools [online]. Available from: https://www.gaia-gis.it/


fossil/spatialite_gui/index [Accessed August 2014]

GRASER, A. 2014. 3D viz with QGIS & three.js [online]. Available from:
http://anitagraser.com/2014/03/15/3d-viz-with-qgis-three-js/ [Accessed August 2014]

Open Source GIS Blog. 2014. More 3D Maps and Tips using QGIS2ThreeJS [online].
Available from: http://www.opensourcegisblog.blogspot.co.uk/2014/04/more-3d-maps-and-
tips-using-qgis2threejs.html [Accessed August 2014]

ORDNANCE SURVEY. 2014. OSTN02 – NTv2 format [online]. Southampton: Ordnance


Survey. Available from: http://www.ordnancesurvey.co.uk/business-and-government/help-
and-support/navigation-technology/os-net/ostn02-ntv2-format.html [Accessed August 2014]

POSTGIS DEVELOPMENT GROUP. Raster Data Management, Queries, and Applications.


In: PostGIS 2.1.5dev Manual [online]. Available from:
http://postgis.net/docs/using_raster_dataman.html#RT_Raster_Loader [Accessed
September 2014]

POSTGRESQL GLOBAL DEVELOPMENT GROUP. 2014. 19.3. Authentication Methods.


In: PostgreSQL 9.3.5 Documentation [online].
http://www.postgresql.org/docs/current/static/auth-methods.html [Accessed September
2014]

POTH, A. 2011. AVL2SLD [online]. Available from: http://wiki.deegree.org/deegreeWiki/


AVL2SLD [Accessed August 2014]

WEISER, A. n.d. A tool for reading out styling information from ArcMap® and converting
into Styled Layer Descriptor-Files (SLD) of OGC [online]. Available from:
http://arcmap2sld.geoinform. fh-mainz.de/ArcMap2SLDConverter_Eng.htm [Accessed
August 2014]

35
Appendix 1
Please see the spreadsheet: Appendix1_CoreFunctionality.xlsx

Appendix 2
Please see the spreadsheet: Appendix2_Spatial3DAnalystFunctionality.xlsx

36

You might also like