This presentation and materials:
We make interactive maps and visualizations.
everything is related to everything else, but near things are more related than distant thingsTobler's first law of geography
Our brains organise by location
We have no choice but to think and see spatially [1]Vector vs Raster
Maps organise complex data about the environment.
Reveal patterns and relationships.
Maps allow us to communicate about location using a common framework
Communicate locations & distances on the Earth's surface
The real shape of the earth is too complex to be useful as a reference for measurement..
3D model
Longitude Latitude
Mathematical projection / translation
2D
Lon Lat in decimal degrees
GPS
Standard way to store most geodata for the Web:
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [5.2394137,52.0819662]
},
"properties": {
"name": "Hotel Theater Figi"
}
}
Square, scale not relevant, shapes important
We store data in EPSG:4326, but display it in EPSG:3857!
Netherlands!
WGS84 EPSG:4326
Web Mercator EPSG:3857
RD New EPSG:28992
Interactive
Graphic
More about coordinate systems and projections
Tiled Web Map
Static Background. Raster based
Interactive layers
Customized Background map
Interactive Data
WebGL rendering!
Maker-driven Web Maps
Scale-dependent styling is a hassle
The solution?
The solution?
The solution
Interactive Web Maps
The solution?
All tiles size 256x256 pixels
Placed in a grid, sharing boundaries
Seamless map
All these little tiles load way faster than one big map!
We call this slippy maps
Each zoom level has its own set of tiles!
Zoom level 0: 1 tile for the whole world.
Increases exponentially...
Zoom level 1: 4 tiles
Zoom level 2: 16 tiles
etc.
Tiles are styled and rendered in advance
Tiles are just images on the web
http://tile.openstreetmap.org/5/16/10.png
/z/x/y
Lot's of GeoData
Styled
Rendered Cached Served
Base Layer
Interface and Interaction
Zoom, panning, clicking etc.
An Open-Source JavaScript Library for Mobile-Friendly Interactive Maps
simplicity, performance and usability
Developed by: Vladimir Agafonkin.
Weighing about 38 KB of JS.
Has all the mapping features most developers ever need.
Can be extended with Plugins
Well documented
Provide data for you.
Provide the basemap.
Its not GIS
bl.ocks.org > Base map in WebMercator
Sooo many styles provided have a look
Base Layer
Raster
Data Layer / Feature Layer
Vector
Mapbox GL.js
No colours
Arrays in a 256 x 256 matrix
Same tiling schema as Raster png tiles.
Binary format
Simplifies geometries
No interaction with objects
No information available about objects
Multiple visualizations = multiple tile sets
Rendering is done on client side not by the server
So different clients can style a map different
Small tile size. So faster data transfer.
High resolution.
Direct access to feature information.
Based on the binary protocal buffer (.pbf) from Google.
Standard already used by Esri.
Web Mercator projection, Google tiling scheme.
.mvt - .pbf
.mbtiles
https://tile.mapzen.com/mapzen/vector/v1/{layers}/{z}/{x}/{y}.{format}
https://free.tilehosting.com/data/v3.json?key=*****
NL Amsterdam Datalab.
"https://t1.data.amsterdam.nl/wm/{z}/{x}/{y}.pbf"
PDOK BRT+BGT
"http://geodata.nationaalgeoregister.nl/beta/topotiles/{z}/{x}/{y}.pbf"
JavaScript
WGS84 data only!!
GeoJSON data earthquakes
Bl.ocks.org Fonts
Bl.ocks.org Extrusion
My lists of
interesting links, workshops, presentations and background information:
for webmapping in general and d3 & Leaflet
Feel free to contact me!
Niene Boeijen
niene@webmapper.net