Introduction

Mapviewer is an abstraction over Leaflet that can create common GIS applications using configurations.

{% from mapviewer_app import load_page %} {% raw load_page('mv-about.html') %} {% raw load_page('mv-getting-started.html') %}

Options

Mapviewer options are listed at g1 docs.

Features

Mapviewer currently supports markers, circle markers, choropleth, drilldown abilities.

{% raw load_page('mv-markers.html') %} {% raw load_page('mv-circlemarkers.html') %} {% raw load_page('mv-choropleth.html') %} {% raw load_page('mv-drilldown.html') %} {% raw load_page('mv-basetiles.html') %}

How-to

{% raw load_page('mv-controls.html') %} {% raw load_page('mv-colors.html') %} {% raw load_page('mv-click-events.html') %} {% raw load_page('mv-tooltip.html') %}

Resources and Tutorials

Resources

Mapshaper

Use mapshaper to view, edit, compress, export map files. It accepts multiple file types and exports to GeoJSON, TopoJSON. It also has an excellent command-line utility support.

QGIS

QGIS is a powerful cross platform software allows viewing, editing of shapefiles with layer-level control. It has support to export the shapefiles to GeoJSON in custom coordinates.

Leaflet

leafletjs is a JavaScript library to render maps on web interfaces.

Tutorials

Video introduction

Here's a detailed introduction to Mapviewer, its background and possibilities.

Shapefiles can get large in size due to different reasons: original GeoJSON could be of high quality, GeoJSON layer could have several attributes which might not be used in your application.

How to optimize your mapfile with mapshaper

Often your application might not need a detailed view of the map. Simplifying the boundaries of the map will still retain geographic boundaries without distortion. Mapshaper allows us to simplify maps to great extent using different algorithms.

{% raw load_page('reduce-mapfile-size.html') %}

Filter attributes in map file in mapshaper

Depending on the source of your GeoJSON or TopoJSON file, it can contain several data attributes. Your application might not need all attributes. Mapshaper gives the ability to do this on the browser but via commands.

{% raw load_page('filter-mapfile.html') %}

Create a custom region map file in QGIS

India map at state level, district level, block level are commonly used. If you were to use a custom region map, say division level. How would one go about creating such map? At an abstract level, state contains divisions, each division contains districts, each district contains blocks and each block contains villages.

{% raw load_page('custom-map-file.html') %}