.. only:: html
|updatedisclaimer|
.. Purpose: This chapter aims to describe how the user starts to use QGIS. It
.. should be kept short with only few steps to get QGIS working with two layers.
.. _`label.getstarted`:
***************
Getting Started
***************
.. only:: html
.. contents::
:local:
This chapter gives a quick overview of installing QGIS, some sample data from
the QGIS web page, and running a first and simple session visualizing raster
and vector layers.
.. index:: Installation
.. _`label_installation`:
Installation
============
Installation of QGIS is very simple. Standard installer packages are available
for MS Windows and macOS. For many flavors of GNU/Linux, binary packages (rpm
and deb) or software repositories are provided to add to your installation manager.
Get the latest information on binary packages at the QGIS website at
http://download.qgis.org.
Installation from source
------------------------
If you need to build QGIS from source, please refer to the installation
instructions. They are distributed with the QGIS source code in a file
called :file:`INSTALL`. You can also find them online at
http://htmlpreview.github.io/?https://raw.github.com/qgis/QGIS/master/doc/INSTALL.html.
If you want to build a particular release, you should replace ``master`` by the
release branch (commonly in the ``release-X_Y`` form) in the above-mentioned
link because instructions may differ.
Installation on external media
-------------------------------
QGIS allows you to define a ``--configpath`` option that overrides the default
path for user configuration (e.g., :file:`~/.qgis2` under Linux) and forces
**QSettings** to use this directory, too. This allows you to, for instance, carry a
QGIS installation on a flash drive together with all plugins and settings.
See section :ref:`env_options` for additional information.
.. index:: Data sample
.. _label_sampledata:
Sample Data
-----------
The user guide contains examples based on the QGIS sample dataset.
|win| The Windows installer has an option to download the QGIS sample dataset.
If checked, the data will be downloaded to your :file:`My Documents` folder and
placed in a folder called :file:`GIS Database`. You may use Windows Explorer to
move this folder to any convenient location. If you did not select the checkbox
to install the sample dataset during the initial QGIS installation,
you may do one of the following:
* Use GIS data that you already have
* Download sample data from
http://qgis.org/downloads/data/qgis_sample_data.zip
* Uninstall QGIS and reinstall with the data download option checked (only recommended if
the above solutions are unsuccessful)
|nix| |osx| For GNU/Linux and macOS, there are not yet dataset installation
packages available as rpm, deb or dmg. To use the sample dataset, download the
file :file:`qgis_sample_data` as a ZIP archive from
http://qgis.org/downloads/data/ and unzip the archive
on your system.
The Alaska dataset includes all GIS data that are used for examples and
screenshots in the user guide; it also includes a small GRASS database.
The projection for the QGIS sample dataset is Alaska Albers Equal Area with
units feet. The EPSG code is 2964.
::
PROJCS["Albers Equal Area",
GEOGCS["NAD27",
DATUM["North_American_Datum_1927",
SPHEROID["Clarke 1866",6378206.4,294.978698213898,
AUTHORITY["EPSG","7008"]],
TOWGS84[-3,142,183,0,0,0,0],
AUTHORITY["EPSG","6267"]],
PRIMEM["Greenwich",0,
AUTHORITY["EPSG","8901"]],
UNIT["degree",0.0174532925199433,
AUTHORITY["EPSG","9108"]],
AUTHORITY["EPSG","4267"]],
PROJECTION["Albers_Conic_Equal_Area"],
PARAMETER["standard_parallel_1",55],
PARAMETER["standard_parallel_2",65],
PARAMETER["latitude_of_center",50],
PARAMETER["longitude_of_center",-154],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0],
UNIT["us_survey_feet",0.3048006096012192]]
If you intend to use QGIS as a graphical front end for GRASS, you can find a
selection of sample locations (e.g., Spearfish or South Dakota) at the
official GRASS GIS website, http://grass.osgeo.org/download/sample-data/.
.. index:: Start QGIS, Stop QGIS
Launching QGIS
==============
.. _`label_startingqgis`:
Starting and Stopping QGIS
--------------------------
Starting QGIS is done as you usually do for any other application on your
platform. It means that you can launch QGIS by:
* typing ``qgis`` at a command prompt, assuming that QGIS is added to your PATH
or you're in its installation folder
* using |nix| the Applications menu if using a precompiled binary,
|win| the Start menu or |osx| the Dock
* double clicking the icon in your Applications folder or desktop shortcut
* double clicking an existing QGIS project (``.qgs``) file. Note that this will
also open the project
To stop QGIS, click:
* |nix| |win| the menu option :menuselection:`Project --> Exit QGIS` or use the shortcut
:kbd:`Ctrl+Q`
* |osx| :menuselection:`QGIS --> Quit QGIS`, or use the shortcut :kbd:`Cmd+Q`
* or use the red cross at the right top corner of the main interface of the application.
.. index:: Command line options
.. _`label_commandline`:
Command Line Options
--------------------
In previous section you learned how to start QGIS.
You will see that QGIS also provides further command line options.
QGIS supports a number of options when started from the command line. To
get a list of the options, enter ``qgis --help`` on the command line. The usage
statement for QGIS is::
qgis --help
Returns::
QGIS - 2.16.1-Nødebo 'Nødebo' (8545b3b)
QGIS is a user friendly Open Source Geographic Information System.
Usage: /usr/bin/qgis.bin [OPTION] [FILE]
OPTION:
[--snapshot filename] emit snapshot of loaded datasets to given file
[--width width] width of snapshot to emit
[--height height] height of snapshot to emit
[--lang language] use language for interface text
[--project projectfile] load the given QGIS project
[--extent xmin,ymin,xmax,ymax] set initial map extent
[--nologo] hide splash screen
[--noversioncheck] don't check for new version of QGIS at startup
[--noplugins] don't restore plugins on startup
[--nocustomization] don't apply GUI customization
[--customizationfile] use the given ini file as GUI customization
[--optionspath path] use the given QSettings path
[--configpath path] use the given path for all user configuration
[--authdbdirectory path] use the given directory for authentication database
[--code path] run the given python file on load
[--defaultui] start by resetting user ui settings to default
[--dxf-export filename.dxf] emit dxf output of loaded datasets to given file
[--dxf-extent xmin,ymin,xmax,ymax] set extent to export to dxf
[--dxf-symbology-mode none|symbollayer|feature] symbology mode for dxf output
[--dxf-scale-denom scale] scale for dxf output
[--dxf-encoding encoding] encoding to use for dxf output
[--dxf-preset visiblity-preset] layer visibility preset to use for dxf output
[--help] this text
[--] treat all following arguments as FILEs
FILE:
Files specified on the command line can include rasters,
vectors, and QGIS project files (.qgs):
1. Rasters - supported formats include GeoTiff, DEM
and others supported by GDAL
2. Vectors - supported formats include ESRI Shapefiles
and others supported by OGR and PostgreSQL layers using
the PostGIS extension
.. tip::
**Example Using command line arguments**
You can start QGIS by specifying one or more data files on the command
line. For example, assuming you are in the :file:`qgis_sample_data`
directory, you could start QGIS with a vector layer and a raster file
set to load on startup using the following command:
``qgis ./raster/landcover.img ./gml/lakes.gml``
**Command line option** ``--snapshot``
This option allows you to create a snapshot in PNG format from the current view.
This comes in handy when you have a lot of projects and want to generate
snapshots from your data.
Currently, it generates a PNG file with 800x600 pixels. This can be adjusted
using the ``--width`` and ``--height`` command line arguments. A filename can
be added after ``--snapshot``.
**Command line option** ``--lang``
Based on your locale, QGIS selects the correct localization. If you would like
to change your language, you can specify a language code. For example,
``qgis --lang it`` starts QGIS in Italian localization.
**Command line option** ``--project``
Starting QGIS with an existing project file is also possible. Just add the
command line option ``--project`` followed by your project name and QGIS will
open with all layers in the given file loaded.
**Command line option** ``--extent``
To start with a specific map extent use this option. You need to add the
bounding box of your extent in the following order separated by a comma:
::
--extent xmin,ymin,xmax,ymax
**Command line option** ``--nologo``
This command line argument hides the splash screen when you start QGIS.
**command line option** ``--noversioncheck``
Don't check for new version of QGIS at startup.
**Command line option** ``--noplugins``
If you have trouble at start-up with plugins, you can avoid loading them at
start-up with this option. They will still be available from the Plugins Manager afterwards.
.. _custom_commandline:
**Command line option** ``--customizationfile``
Using this command line argument, you can define a GUI customization file, that will
be used at startup.
**Command line option** ``--nocustomization``
Using this command line argument, existing GUI customization will not be applied
at startup.
**Command line option** ``--optionspath``
You can have multiple configurations and decide which one to use when starting
QGIS with this option. See :ref:`gui_options` to confirm where the
operating system saves the settings files. Presently, there is no way to specify
a file to write settings to; therefore, you can create a copy of
the original settings file and rename it. The option specifies path to directory
with settings. For example, to use :file:`/path/to/config/QGIS/QGIS2.ini` settings file,
use option:
::
--optionspath /path/to/config/
**Command line option** ``--configpath``
This option is similar to the one above, but furthermore overrides the default
path for user configuration (:file:`~/.qgis2`) and forces **QSettings** to use
this directory, too. This allows users to, for instance, carry a QGIS installation on a
flash drive together with all plugins and settings.
**Command line option** ``--authdbdirectory``
Again, this option is similar to the one above but define the path to the
directory where the authentication database will be stored.
**Command line option** ``--code``
This option can be used to run a given python file directly after QGIS has started.
For example, when you have a python file named :file:`load_alaska.py` with following content:
::
from qgis.utils import iface
raster_file = "/home/gisadmin/Documents/qgis_sample_data/raster/landcover.img"
layer_name = "Alaska"
iface.addRasterLayer(raster_file, layer_name)
Assuming you are in the directory where the file :file:`load_alaska.py` is located, you
can start QGIS, load the raster file :file:`landcover.img` and give the layer the name
'Alaska' using the following command:
``qgis --code load_alaska.py``
**Command line options** ``--dxf-*``
These options can be used to export QGIS project into a DXF file. Several
options are available:
* *--dxf-export*: the DXF filename into which to export the layers;
* *--dxf-extent*: the extent of the final DXF file;
* *--dxf-symbology-mode*: several values can be used here: none (no symbology),
symbollayer (Symbol layer symbology), feature (feature symbology);
* *--dxf-scale-deno*: the scale denominator of the symbology;
* *--dxf-encoding*: the file encoding;
* *--dxf-preset*: choose a visibility preset. These presets are defined in the
layer tree, see :ref:`label_legend`.
.. _samplesession:
Sample Session: Load raster and vector layers
==============================================
Now that you have QGIS installed and a sample dataset available, we would
like to demonstrate a short and simple QGIS sample session. We will visualize
a raster and a vector layer. We will use:
* the :file:`landcover` raster layer i.e., :file:`qgis_sample_data/raster/landcover.img`
* and the :file:`lakes` vector layer i.e., :file:`qgis_sample_data/gml/lakes.gml`.
#. Start QGIS as seen in :ref:`label_startingqgis`
#. Click on the |addRasterLayer| :sup:`Add Raster Layer` icon.
#. Browse to the folder :file:`qgis_sample_data/raster/`, select
the ERDAS IMG file :file:`landcover.img` and click **[Open]**.
#. If the file is not listed, check if the :guilabel:`Files of type`
|selectString| combo box at the bottom of the dialog is set on the right
type, in this case **Erdas Imagine Images (\*.img \*.IMG)**.
#. Now click on the |addOgrLayer| :sup:`Add Vector Layer` icon.
#. |radioButtonOn| :guilabel:`File` should be selected as :guilabel:`Source Type`
in the new :guilabel:`Add vector layer` dialog. Now click **[Browse]** to
select the vector layer.
#. Browse to the folder :file:`qgis_sample_data/gml/`, select **Geography Markup
Language [GML] [OGR] (*.gml *.GML)** from the :guilabel:`Filter` |selectstring|
combo box, then select the GML file :file:`lakes.gml` and
click **[Open]**. In the :guilabel:`Add vector layer` dialog, click **[OK]**.
The :guilabel:`Coordinate Reference System Selector` dialog opens with
:guilabel:`NAD27 / Alaska Alberts` selected, click **[OK]**.
#. Zoom in a bit to your favourite area with some lakes.
#. Double click the :file:`lakes` layer in the map legend to open the
:guilabel:`Properties` dialog.
#. Click on the :guilabel:`Style` tab and select a blue as fill color.
#. Click on the :guilabel:`Labels` tab and select :guilabel:`Show labels for
this layer` in the drop-down menu to enable labeling. Then from the
:guilabel:`Label with` list, choose the ``NAMES`` field as the field containing labels.
#. To improve readability of labels, you can add a white buffer around them
by clicking :guilabel:`Buffer` in the list on the left, checking |checkbox|
:guilabel:`Draw text buffer` and choosing 3 as buffer size.
#. Click **[Apply]**. Check if the result looks good, and finally click **[OK]**.
You can see how easy it is to visualize raster and vector layers in QGIS. Let's
move on to the sections that follow to learn more about the available
functionality, features and settings, and how to use them.
.. index:: Projects
.. _sec_projects:
Projects
========
The state of your QGIS session is considered a project. QGIS works on one
project at a time. Settings are considered as being either per-project or as a
default for new projects (see section :ref:`gui_options`). QGIS can save the
state of your workspace into a project file using the menu options
:menuselection:`Project -->` |fileSave| :menuselection:`Save`
or :menuselection:`Project -->` |fileSaveAs| :menuselection:`Save As...`.
If the loaded project file on disk was meanwhile changed, by default, QGIS will
ask you if you want to overwrite the changes into the project file. This behavior
is set by checking |checkbox| :guilabel:`Prompt to save project and data source
changes when required` under :menuselection:`Settings --> Options --> General`
menu .
Load saved projects into a QGIS session using :menuselection:`Project -->`
|fileOpen| :menuselection:`Open...`,
:menuselection:`Project --> New from template` or
:menuselection:`Project --> Open Recent -->`.
At startup, a list of screenshot with the name and path of each of the most recent
projects (up to ten) is shown instead of a white and empty map canvas. This is
a handy and quicker way to remember what a project was about and double-click
a row opens the selected project.
If you're willing to create a new project, just add new layers and the list disappears.
If you wish to clear your session and start fresh, choose
:menuselection:`Project -->` |fileNew| :menuselection:`New`.
Either of these menu options will prompt you to save the existing project if
changes have been made since it was opened or last saved.
The kinds of information saved in a project file include:
* Layers added
* Which layers can be queried
* Layer properties, including symbolization and styles
* Projection for the map view
* Last viewed extent
* Print Composers
* Print Composer elements with settings
* Print Composer atlas settings
* Digitizing settings
* Table Relations
* Project Macros
* Project default styles
* Plugins settings
* QGIS Server settings from the OWS settings tab in the Project properties
* Queries stored in the DB Manager
The project file is saved in XML format, so it is possible to edit the file
outside QGIS if you know what you are doing. The file format has been updated several
times compared with earlier QGIS versions. Project files from older QGIS versions
may not work properly any more. To be made aware of this, in the
:guilabel:`General` tab under :menuselection:`Settings --> Options` you should
tick |checkbox| :guilabel:`Warn when opening a project file saved with an older
version of QGIS`.
Whenever you save a project in QGIS a backup of the project file is made with the
extension ``.qgs~``.
.. _`sec_output`:
Output
======
.. index:: Print composer, Quick print, World file
single: Output; Save as image
There are several ways to generate output from your QGIS session. We have
discussed one already in section :ref:`sec_projects`, saving as a project file.
Here is a sampling of other ways to produce output files:
* Menu option :menuselection:`Project -->` |saveMapAsImage| :menuselection:`Save
as Image...` opens a file dialog where you select the name, path and type of
image (PNG, JPG and many other formats). A world file with extension ``PNGW``
or ``JPGW`` saved in the same folder georeferences the image.
* Menu option :menuselection:`Project --> DXF Export...` opens
a dialog where you can define the 'Symbology mode', the 'Symbology scale' and
vector layers you want to export to DXF. Through the 'Symbology mode' symbols
from the original QGIS Symbology can be exported with high fidelity.
* Menu option :menuselection:`Project -->` |newComposer|
:menuselection:`New Print Composer...` opens a dialog where you can layout and
print the current map canvas (see section :ref:`label_printcomposer`).