万本电子书0元读

万本电子书0元读

顶部广告

QGIS Blueprints电子书

售       价:¥

1人正在读 | 0人评论 9.8

作       者:Ben Mearns

出  版  社:Packt Publishing

出版时间:2015-09-25

字       数:195.7万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Develop analytical location-based web applications with QGIS About This Book Tame geographic information workflows with QGIS blueprints for smart web applications Create geographic web applications using QGIS and free/open source software Blueprints provide real-world applications covering many use cases Who This Book Is For This book encompasses relatively experienced GIS developers who have a strong grounding in the fundamentals of GIS development. They will have used QGIS before, but are looking to understand how to develop more complex, layered map applications that expose various data sets, utilize different visualizations, and are consumable (usable) by end users What You Will Learn Review geographic information principles and the application of these principles in the QGIS free/open source ecosystem Perform advanced analysis with site selection, hydrologic, and topological networks Build performant web applications by tile caching and generating static assets Provide collaborative editing capabilities for your team or community Develop custom and dynamic analysis and visualization capabilities Select the best components from desktop and web, for your use case Integrate it with social media and crowdsourcing In Detail QGIS, the world’s most popular free/open source desktop geographic information system software, enables a wide variety of use cases involving location – previously only available through expensive specialized commercial software. However, designing and executing a multi-tiered project from scratch on this complex ecosystem remains a significant challenge. This book starts with a primer on QGIS and closely related data, software, and systems. We’ll guide you through six use-case blueprints for geographic web applications. Each blueprint boils down a complex workflow into steps you can follow to reduce time lost to trial and error. By the end of this book readers should be able to build complex layered applications that visualize multiple data sets, employing different types of visualization, and give end users the ability to interact with and manipulate this data for the purpose of analysis. Style and approach This is a comprehensive guide to the application of QGIS and free/open source software in creating web applications from analysis. Step-by-step blueprints guide the reader through analytical and web development topics and designs.
目录展开

QGIS Blueprints

Table of Contents

QGIS Blueprints

Credits

About the Author

About the Reviewers

www.PacktPub.com

Support files, eBooks, discount offers, and more

Why subscribe?

Free access for Packt account holders

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. Exploring Places – from Concept to Interface

The software

The development community and dependencies

Data format read/write

Geospatial coordinate transformation

Analysis

Web publishing

Installation

Linux

Mac

Windows

OSGeo-Live

Acquiring data for geospatial applications

Producing geospatial data with georeferencing

Table join

Geocode

Orthorectify

The spatial reference manipulation – making the coordinates line up

Setting CRS

Transformation and projection

Visualizing GIS data

The layer style

Labels

The basemap

Using OpenStreetMap for the basemap data

Avoiding obscurity and confusion

The layer scale dependency

The label conflict

The polygon label conflict resolution

Tile caches

Generating and testing a simple directory-based tile cache structure

Create a layer description file for the TileLayer plugin

Summary

2. Identifying the Best Places

Vector data – Extract, Transform, and Load

Loading data and establishing the CRS conformity

The extracting (filtering) features

Converting to raster

Doing more at once—working in batch

Raster analysis

Map algebra

Additive modeling

Proximity

Creating a proximity to the easements grid

Slope

Combining the criteria with Map Calculator

Zonal statistics

Publishing the results as a web application

qgis2leaf

Summary

3. Discovering Physical Relationships

Hydrological modeling

Preparing the data

Filling the grid sinks

Clipping the grid to study the area by mask layer

Modeling the hydrological network based on elevation

Workflow automation with the graphical models

Creating a graphical model

Adding the input parameters

Adding the raster parameter – elevation

Adding the vector parameter – extent

Adding the algorithms

Fill Sinks

Clip raster

Channel network and drainage basins

Running the model

Spatial join for a performant operational layer interaction

The NNJoin plugin

The CartoDB platform

Publishing the data to CartoDB

Preparing a CartoDB SQL Query

Generating the test data

The CartoDB SQL view tab

The QGIS CartoDB plugin

The CartoDB SQL API

Leaflet and an external API: CartoDB SQL

Summary

4. Finding the Best Way to Get There

Postgres with PostGIS and pgRouting

Installing Postgres/PostGIS/pgRouting

Creating a new Postgres database

Registering the PostGIS and pgRouting extensions

OpenStreetMap data for topology

Downloading the OSM data

Adding the data to the map

Projecting the OSM data

Splitting all the lines at intersections

Database importing and topological relationships

Connecting to the database

Importing into PostGIS with DB Manager

Creating the topological network data

An alternate workflow: topology with osm2po

Using the pgRouting Layer plugin to test

Creating the travel time isochron polygons

Generating the travel time for each road segment

Creating isochron polygons

Converting the travel time lines to points

Selecting the travel time ranges in points and creating convex hulls

Generating the shortest paths for all students

Finding the associated segment for a student location

Calculating the accumulated shortest paths by segment

Flow symbology

Web applications – creating safe corridors

Registering a Twitter account and API access

Setting up the Twitter Tools API

Summary

5. Demonstrating Change

Leveraging spatial relationships

Gathering the data

Boundaries

Tabular data from American FactFinder

Preparing and exporting the data

The tabular data

Combining it yearly

Updating and removing fields

The boundary data

Calculating the average white population change in each census tract

The spatial join in SpatiaLite

Creating a SpatiaLite database

Importing layers to SpatiaLite

Querying and loading the SpatiaLite layer from the DB Manager

TopoJSON

An example of GeoJSON

An example of TopoJSON

Vector simplification

Simplification methods

Other options

Simplifying for TopoJSON

Simplifying for other outputs

Converting to TopoJSON

Web mapshaper

The command-line tool

The D3 data visualization library

What is D3?

Some fundamentals

Parsing

Graphic elements, SVG, path, and Canvas

Projection

Shape generator

Scales

Binding

Select, Select All, Enter, Return, Exit, Insert, and Append

Animated time series map

The development environment

Code

main.js

Output

Summary

6. Estimating Unknown Values

Importing the data

Connecting and importing from MySQL in QGIS

Converting to spatial format

The layer/table relations

NetCDF

Viewing NetCDF in QGIS

Interpolated model values

Python for workflow automation

Knowing your environment

Generating the parameter grids for each time period

What this code does

Running a code in Python

Running the printed commands in the Windows command console

The subprocess module

Calculating the vulnerability index

Creating regular points

Sampling the index grid by points

Create SQLite database and import

A dynamic web application – OpenLayers AJAX with Python and SpatiaLite

Server side – CGI in Python

Python CGI development

Starting a CGI hosting

Testing the CGI hosting

Debugging server-side code

Our Python server-side, database-driven code

PySpatiaLite

The Python code for web access to SQLite through JSON

The OpenLayers/jQuery client-side code

Exporting the OpenLayers 3 map using QGIS

Modifying the exported OpenLayers 3 map application

Adding an interactive HTML element

AJAX – the glue between frontend and backend

Adding an AJAX call to the singleclick event handler

Populating and triggering the popup from the callback function

Testing the application

Summary

7. Mapping for Enterprises and Communities

Google Sheets for data management

Creating a new Google document

Publishing Google Sheets on the Web

Previewing JSON

Parsing the JSON data

Starting up the server

Test parsing with jQuery

Rollout

Assigning permissions to additional users

The editing workflow

The publishing workflow

Viewing the changes in your JSON feed

The cartographic rendering of geospatial data – MBTiles and UTFGrid

OpenStreetMap to SpatiaLite

To tile and use UTFGrid with TileMill

Preparing a basemap from OSM

Preparing the operational layer in TileMill

Exporting MBTiles

Uploading to Mapbox

The MBTiles file

Interacting with Mapbox services

Connecting your local app with a hosted service

The API token

Mapbox.js

Simple UTFGrid modification

Previewing a simple UTFGrid modification

OpenLayers

Code modification

Putting it all together

Parsing the sheets JSON feed

Completing the application

Going further – local MBTiles hosting with TileStream

Setting up a Vagrant virtual Linux instance

Installing Node.js and TileStream

Setting up and starting TileStream

Summary

Index

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部