万本电子书0元读

万本电子书0元读

顶部广告

Mastering QGIS - Second Edition电子书

售       价:¥

11人正在读 | 0人评论 6.2

作       者:Kurt Menke, GISP,Dr. Richard Smith Jr., GISP,Dr. Luigi Pirelli

出  版  社:Packt Publishing

出版时间:2016-09-01

字       数:314.8万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Go beyond the basics and unleash the full power of QGIS with practical, step-by-step examples About This Book This book is your one-stop solution to all of your GIS needs using the open source QGIS Master QGIS by learning about database integration, geoprocessing tools, Python *s, advanced cartography, and custom plugins This example-rich, practical guide will help you create sophisticated analyses and maps Who This Book Is For If you are a GIS professional, a consultant, a student, or perhaps a fast learner who wants to go beyond the basics of QGIS, then this book is for you. It will prepare you to realize the full potential of QGIS. What You Will Learn Create and manage a spatial database Get to know advanced techniques to style GIS data Prepare both vector and raster data for processing Add heat maps, live layer effects, and labels to your maps Master LAStools and GRASS integration with the Processing Toolbox Edit and repair topological data errors Automate workflows with batch processing and the QGIS Graphical Modeler Integrate Python *ing into your data processing workflows Develop your own QGIS plugin In Detail QGIS is an open source solution to GIS. It is widely used by GIS professionals all over the world. It is the leading alternative to the proprietary GIS software. Although QGIS is described as intuitive, it is also by default complex. Knowing which tools to use and how to apply them is essential to producing valuable deliverables on time. Starting with a refresher on the QGIS basics, this book will take you all the way through to creating your first custom QGIS plugin. From the refresher, we will recap how to create, populate, and manage a spatial database. You’ll also walk through styling GIS data, from creating custom symbols and color ramps to using blending modes. In the next section, you will discover how to prepare vector, heat maps, and create live layer effects, labeling, and raster data for processing. You’ll also discover advanced data creation and editing techniques. The last third of the book covers the more technical aspects of QGIS such as using LAStools and GRASS GIS’s integration with the Processing Toolbox, how to automate workflows with batch processing, and how to create graphical models. Finally, you will see how to create and run Python data processing *s and write your own QGIS plugin with pyqgis. By the end of the book, you will understand how to work with all the aspects of QGIS, and will be ready to use it for any type of GIS work. Style and approach This step-by-step comprehensive guide will let you dig your teeth into working with spatial databases, creating your own QGIS plugins, and creating your own custom graphical models.
目录展开

Mastering QGIS - Second Edition

Table of Contents

Mastering QGIS - Second Edition

Credits

Foreword

About the Authors

About the Reviewer

www.PacktPub.com

eBooks, discount offers, and more

Why subscribe?

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Downloading the color images of this book

Errata

Piracy

Questions

1. A Refreshing Look at QGIS

Release schedules

QGIS download and installation

Installing QGIS on Windows

Installing QGIS on Mac OS X

Installing QGIS on Ubuntu Linux

Installing QGIS only

Installing QGIS and other FOSSGIS packages

Installing QGIS on a Chromebook

Tour of QGIS

Familiarizing yourself with QGIS Desktop

User interface themes

Familiarizing yourself with QGIS Browser

Loading data into QGIS Desktop

Loading vector data

Loading raster data

Loading databases

Loading web services

Working with CRS

Working with tables

Creating table joins

Editing data

Snapping

Styling vector data

Styling raster data

Enhancing raster display with contrast enhancement

Blending modes

Composing maps

Adding functionality with plugins

Custom QGIS variables

Using Project level variables in the Print Composer

Using variables in data defined overrides

Using Layer level variables

Summary

2. Creating Spatial Databases

Fundamental database concepts

Describing database tables

Knowing about table relationships

Reviewing the basics of Structured Query Language

Creating a spatial database

Importing data into a SpatiaLite database

Importing KML into SpatiaLite

Importing a shapefile into SpatiaLite

Importing tables into SpatiaLite

Exporting tables out of SpatiaLite

Managing tables

Creating a new table

Renaming a table

Editing table properties

Deleting a table

Emptying a table

Creating queries and views

Creating a SQL query

Creating a spatial view

Dropping a spatial view

Summary

3. Styling Raster and Vector Data

Choosing and managing colors

Always-available color picker components

Changeable panels in color picker

Color ramp

Color wheel

Color swatches

Color sampler

Color picker components available in the Layers panel

Managing color ramps

Managing the QGIS color ramp collection

Renaming a color ramp

Removing a color ramp

Exporting a color ramp

Importing a color ramp

Adding a color ramp

Adding a Gradient color ramp

Adding a Random color ramp

Adding a ColorBrewer color ramp

Adding a cpt-city color ramp

Editing a color ramp

Styling singleband rasters

Paletted raster band rendering

Singleband gray raster band rendering

Singleband pseudocolor raster band rendering

Styling multiband rasters

Creating a raster composite

Raster color rendering

Raster resampling

Styling vectors

Single-symbol vector styling

Categorized vector styling

Graduated vector styling

Rule-based vector styling

Point-displacement vector styling

Inverted polygons vector styling

Heatmap vector styling

2.5 D vector styling

Vector layer rendering

Layer transparency

Layer blending mode

Feature blending mode

Control feature rendering order

Using diagrams to display thematic data

Parameters common to all diagram types

Diagram size parameters

Diagram placement parameters

Adding attributes to diagrams

Creating a pie chart diagram

Creating a text diagram

Creating a histogram chart diagram

Saving, loading, and setting default styles

Saving a style

Loading a style

Setting and restoring a default style

Adding and renaming styles in the current QGIS project

Summary

4. Preparing Vector Data for Processing

Merging shapefiles

Creating spatial indices

Checking for geometry errors

Check Geometries plugin

Converting vector geometries

Creating polygon centroids

Converting polygons to lines and lines to polygons

Creating polygons surrounding individual points

Extracting nodes from lines and polygons

Simplifying and densifying features

Converting between multipart and singlepart features

Adding geometry columns to an attribute table

Using basic vector geoprocessing tools

Spatial overlay tools

Using the Clip and Difference tools

Using the Intersect and Symmetrical Difference tools

Overlaying polygon layers with Union

Creating buffers

Generating convex hulls

Dissolving features

Defining coordinate reference systems

Understanding the PROJ.4 definition format

Defining a new custom coordinate reference system

Viewing a statistical summary of vector layers

Advanced field calculations

Exploring the field calculator interface

Writing advanced field calculations

The first example – calculating and formatting current date

The second example – calculating with geometry

The third example – calculating a population-dependent label string

Conditional formatting for attribute table cells

Complex spatial and aspatial queries

Summary

5. Preparing Raster Data for Processing

Reclassifying rasters for analysis

Using the Slicer plugin

Converting datasets from floating point to integer rasters

Resampling rasters for analysis

Rescaling raster values

Aligning raster pixels

Creating a raster mosaic

Generating raster overviews (pyramids)

Converting between raster and vector data models

Converting from raster to vector

Converting from vector to raster (rasterize)

Creating raster surfaces via interpolation

Summary

6. Advanced Data Creation and Editing

Creating points from coordinate data

Mapping well-known text representations of geometry

Geocoding address-based data

How address geocoding works

The first example – geocoding using web services

The second example – geocoding using local street network data

Georeferencing imagery

Understanding ground control points

Using the Georeferencer GDAL plugin

The first example – georeferencing using a second dataset

Getting started

Entering ground control points

Transformation settings

Completing the operation

The second example – georeferencing using a point file

Checking the topology of vector data

Installing the topology checker

Topological rules

Rules for point features

Rules for line features

Rules for polygon features

Using the topology checker

Repairing topological errors via topological editing

Example 1 – resolving duplicate geometries

Example 2 – repairing overlaps

Setting the editing parameters

Repairing an overlap between polygons

Example 3 – repairing a gap between polygons

Summary

7. Advanced Data Visualization

Learn to use live layer effects

Creating beautiful effects with inverted polygon shapeburst fills

Creating coastal vignettes

Study area mask

Creating 3D views with QGIS2ThreeJS

Creating 3D views of terrain

Extruding features

Creating an Atlas

Basic Atlas configuration

Dynamic titles

Dynamic legends

Highlighting the coverage feature

Summary

8. The Processing Toolbox

About the Processing Toolbox

Configuring the Processing Toolbox

Understanding the Processing Toolbox

Using the Processing Toolbox

Performing raster analyses with GRASS

Calculating shaded relief

Calculating the least-cost path

Calculating the slope using r.slope

Reclassifying the new slope raster and the land use raster

Combining the reclassified slope and land use layers

Calculating the cumulative cost raster using r.cost

Calculating the cost path using LCP

Evaluating a viewshed

Clipping the elevation to the boundary of the park using GDAL

Calculating viewsheds for towers using r.viewshed

Combining viewsheds using r.mapcalculator

Calculating raster statistics using r.stats

SAGA

Evaluating a habitat

Calculating elevation ranges using the SAGA Raster calculator

Clipping land use to the park boundary using Clip grid with polygon

Querying land use for only surface water using SAGA Raster calculator

Finding proximity to surface water using GDAL Proximity

Querying the proximity for 1,000 meters of water using GDAL Raster calculator

Reclassifying land use using the Reclassify grid values tool

Combining raster layers using SAGA Raster calculator

Exploring hydrologic analyses with TauDEM

Removing pits from the DEM

Calculating flow directions across the landscape

Calculating the upstream area above Fort Klamath

Calculating a stream network raster grid

Creating a watershed-specific vector stream network

R

Exploring summary statistics and histograms

LAStools and Fusion

Exploring LIDAR data

Converting LAS/LAZ files

Creating surfaces from LIDAR data

Summary

9. Automating Workflows with the Graphical Modeler

An introduction to the graphical modeler

Opening the graphical modeler

Configuring the modeler and naming a model

Adding data inputs to your model

Adding algorithms to your model

Running a model

Editing a model

Documenting a model

Saving, loading, and exporting models

Executing model algorithms iteratively

Nesting models

Using batch processing with models

Converting a model into a Python script

Summary

10. Creating QGIS Plugins with PyQGIS and Problem Solving

Webography – where to get API information and PyQGIS help

PyQGIS cookbook

API documentation

The QGIS community, mailing lists, and IRC channel

Mailing lists

IRC channel

The Stack Exchange community

Sharing your knowledge and reporting issues

The Python Console

Getting sample data

My first PyQGIS code snippet

My second PyQGIS code snippet – looping the layer features

Exploring iface and QGis

Exploring a QGIS API in the Python Console

Creating a plugin structure with Plugin Builder

Installing Plugin Builder

Locating plugins

Creating my first Python plugin – TestPlugin

Setting mandatory plugin parameters

Setting optional plugin parameters

Generating the plugin code

Compiling the icon resource

Plugin file structure – where and what to customize

Exploring main plugin files

Plugin Builder-generated files

A simple plugin example

Adding basic logic to TestPlugin

Modifying the layout with Qt Designer

Adding two pull-down menus

Modifying GUI logic

Modifying plugin logic

Classifying layers

Populating the combobox

Understanding self

Showing and running the dialog

Some improvements

More detail of the code

Setting up a debugging environment

What is a debugger?

Installing Aptana

Setting up PYTHONPATH

Starting the Pydevd server

Connecting QGIS to the Pydevd server

Connecting using the Remote Debug QGIS plugin

Debugging session example

Creating a PyDev project for TestPlugin

Adding breakpoints

Debugging in action

Summary

11. PyQGIS Scripting

Where to learn Python basics

Tabs or spaces, make your choice!

How to load layers

How to manage rasters

Exploring QgsRasterLayer

Visualizing the layer

Managing vector files

Managing database vectors

Vector structure

The basic vector methods

Describing the vector structure

Describing the header

Describing the rows

Exploring QgsGeometry

Iterating over features

Describing the iterators

Editing features

Updating canvas and symbology

Editing through QgsVectorDataProvider

Changing a feature's geometry

Changing a feature's attributes

Deleting a feature

Adding a feature

Editing using QgsVectorLayer

Discovering the QgsVectorLayerEditBuffer class

Changing a feature's geometry

Changing a feature's attributes

Adding and removing a feature

Running Processing Toolbox algorithms

Looking for an algorithm

Getting algorithm information

Running algorithms from the console

Running your own processing script

Creating a test Processing Toolbox script

Looking at the custom script

Running the script

Running an external algorithm or command

Running a simple command

Interacting with the map canvas

Getting the map canvas

Explaining Map Tools

Setting the current Map Tool

Getting point-click values

Getting current Map Tool

Creating the new Map Tool

Creating a map canvas event handler

Creating a Map Tool event handler

Setting up the new Map Tool

Using point-click values

Exploring the QgsRubberBand class

Summary

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部