GIS software - Services for Research
GIS software
There is a lot of different GIS software projects, below is a list of most widely used ones. Most of the them are open source, exceptions are marked accordingly. The first link for each software is the link to the software's main home page. Software installed to Puhti or included in CSC software consortium are provided with an extra link to our software specific page, with additional information about the software.
Desktop GIS-software is used for analyzing and visualizing spatial data on a local PC or laptop. They have a nice GUI (graphical user interface) for easy working. If looking for software with Finnish user interface, ArcGIS Pro, QGIS and MapInfo are the main options.
- ArcGIS, the most used commercial general use GIS software. CSC organizes ArcGIS software consortium for Finnish universities.
- QGIS, general use GIS software. QGIS in Puhti.
- GeoDa for spatial data analysis and geostatistics.
- GRASS, general use GIS software, a lot of tools, but a little bit difficult to get started.
- LasTools, for LiDAR processing. LasTools in Puhti.
- MapInfo, general use commercial GIS software.
- OrfeoToolBox, for processing high resolution optical, multispectral and radar images. OrfeoToolBox in Puhti.
- SAGA GIS for terrain analysis. SagaGIS in Puhti.
- SNAP for remote sensing applications. SNAP in Puhti
- Zonation for large-scale conservation planning. Zonation in Puhti.
Web Server-software is used for providing spatial data according to OGC standard web service standards: WMS, WMTS WFS, WCS. They can do also spatial analysis, if supporting the WPS standards.
- GeoServer, has a web interface for administration. Instructions for cPouta.
- MapServer.
Web Client-software, for making web maps usually some JavaScript library is used. The web client is usually backed by a web server.
- OpenLayers. More features.
- Leaflet. Lighter and faster.
- Google Maps API. Commercial.
- Oskari, the code behind NLS Karttaikkuna, developed mostly by Finnish Land Survey. Based on OpenLayers.
Database-software, for storing bigger amounts of data, mostly used with vector data.
- PostGIS, a spatial data add-on for PostgreSQL database. Instructions for cPouta.
- SpatiaLite, extension of SQLite.
Libraries, for specific or lower level tasks.
- GDAL, Swiss army knife for spatial data manipulation. GDAL in Puhti.
- OpenDroneMap, for processing aerial drone imagery. OpenDroneMap in Puhti.
- PDAL library for translating and manipulating point cloud data. PDAL in Puhti.
- FORCE All-in-one command line tool for mass-processing of medium-resolution satellite images. FORCE in Puhti.
- GPSBabel, converting GPS data.
- WhiteboxTools, wide selection of spatial analysis tools. WhiteboxTools in Puhti.
Scripting, for automating analysis. Both R and Python have their own GIS-specific packages. Additionally they have packages for accessing some other GIS-software functionality, for details see the table below.
- R, is originally specialized on general statistical analysis of data, but it has also a lot of packages for spatial analysis and statistics. R spatial in Puhti.
- Python, a general use programming language, which is widely used also for GIS purposes. Geoconda in Puhti.
- Shell, several software packages provide also command line interface (CLI), that can be used for automating processes with shell scripts. Additionally both R and Python support running CLI commands from the script.
Software | R | Python | CLI |
ArcGIS | R – ArcGIS Community | ArcPy, ArcGIS API for Python | - |
QGIS | RQGIS3 | PyQGIS | - |
GRASS | rgrass7 | GRASS GIS Python libraries | GRASS shell scripting |
LasTools | (something in uavRst) | - | Yes |
MapInfo | - | MapInfo Pro and Python Basics | - |
OrfeoToolBox | (link2GI) | OTB Python API | OTB CLI |
SagaGIS | Rsagacmd, RSAGA | SAGA GIS API for Python | Saga Tools |
SNAP | - | snappy | GPT |
Zonation | - | - | Yes |
PostGIS | (sf) | (GeoAlchemy2) | psql |
GDAL | sf, raster, sp, rgdal, gdalUtils | fiona, shapely, geopandas, rasterio, GDAL | Yes |
OpenDroneMap | Yes | ||
PDAL | - | Python in PDAL | Yes |
FORCE | - | - | Yes |
GPSBabel | readGPS | gpsbabel | Yes |
WhiteboxTools | whiteboxR | whitebox_tools.py | Yes |
Even longer GIS-software lists are available here and here.
GIS-software for parallel computing
If the intention is to do analyze big amounts of data, the best option for speeding things up is to use parallel computing, and then it is well worth choosing your tools right. Only some GIS software packages support parallel computing out-of-the box (meaning that the software use only one core for computations). From the available software in Puhti, the following ones have some kind of support for parallel computing: R, Python, FORCE, LasTools, OpenDroneMap, OrfeoToolBox, SagaGIS, SNAP and WhiteboxTools, the details are given on each software's own page.
Most server kind of software support parallel computing, including GeoServer and PostGIS. These can be set up to cPouta.
Also both ArcMap and especially ArcGIS Pro have functions that can run in parallel. Please see our ArcGIS computing page for additional info.
See also geocomputing page for additional information about analyzing big spatial datasets.
Hadoop/Spark
There are several GIS-oriented Hadoop or Spark extensions. The good side with these tools is that it is possible to analyze huge amounts of data, and fast. The down side is that they are rather complicated to set up and to learn. Also in case of Python / R bindings these usually are incompatible with "normal" Python / R spatial packages, so the code has to be written specifically for these systems. Also the functionality of these tools are usually rather limited to a few functions. In principle these should be possible to set up in cPouta, but so far it has not been done.
- GeoMesa, mostly for vector.
- Geotrellis: raster manipulation in Scala language. Spark. Its Python binding is GeoPySpark.
- GeoWave