Wikivoyage:Dynamic maps Expedition

Cities with mapframe  [?]
20073 / 20912 = 95.988%

See also: Wikivoyage:How to use dynamic maps

The Dynamic maps Expedition is a Wikivoyage Expedition to foster collaboration on dynamic maps.

The classic way of making maps on Wikivoyage was to draw them with a drawing software, and upload a static image. While this approach has its merits, a more dynamic approach can coexist.

Various tools are being written to make both map generation and map usage dynamic. The goal of this expedition is to facilitate collaboration around these tools.

How to help

edit
  • The easiest way to help is to add geographical coordinates to listings, see below. Or if you want to add maps to an article, see How to use dynamic maps.
  • Dynamic maps are only as good as their base map data, so collaboration with OpenStreetMap is highly recommended, especially in areas where transport and building information is missing. Adding roads and points of interest (POIs) is as simple as using an in-browser editor like Potlatch or the new iD editor.
  • Or take a look at Types of maps and their desirable features for other map development ideas, as well as other current projects.

Utilities

edit

Various useful tools and utilities for finding co-ordinates and generating GPX traces:

Points of interest:

  • Right-clicking on any blank area on a dynamic map in Wikivoyage will display (lat, long) co-ordinates
  • OpenStreetMap may already have POIs which overlap our project scope (hotels, eateries, landmarks and attractions); these will have at least a name and co-ordinates but typically carry less information than a complete Wikivoyage {{listing}}.

GPX:

GeoJSON: Multiple utilities provide GPX GeoJSON conversion, as required to use the data with mw:extension:Kartographer.

See Wikivoyage:How to use dynamic maps and Wikivoyage:Geocoding.

Types of maps

edit

Various types of maps can be thought of:

Map typeType of page the map is found onWhat the map showsStatus
ADestination articleDetailed map of the destination, showing the points of interestImplemented, not slippy in-article yet, thumbnail has to be generated manually
BRegion articleMap of the region, showing the areas belonging to each sub-page. Ideally should show the area belonging to each sub-page, but points might be shown if border info is not availableManually created, not slippy
CItinerary articleMap showing the steps of the itineraryManually created, not slippy
DMain pageWorld mapManually created, not slippy
EDestination articlePosition of the destination within its wider area, as seen hereNecessity not debated yet. Might show similarities with B
FRegion articlePosition of the region within its wider area, as seen hereNecessity not debated yet. Might show similarities with B

Desirable features

edit

Here are a few features that might (or might not) be desirable, depending on the type of map:

  • Zoomable, scrollable
  • Embedded in article
  • Rendered as a static image in the print version of the article
  • Link to fullscreen for mobile readers
  • Link to GPS navigation software for mobile readers
  • Integration of a Wikivoyage article's listings that have latitude and longitude
  • Integration of a Wikivoyage article's Template:Geo (for center coordinates and zoom level in lowest-level destination article map)
  • Integration of OpenStreetMap data
  • Integration of usable satellite images
  • Clickable POIs (point of interest)
  • Clickable destinations
  • Clickable regions
  • In case of an itinerary map, show track
  • Boundary definitions
  • Simplified map style to emphasise relevant details (e.g. CloudMade or Mapbox or set "transport" layer as default)
  • Non-overlapping POIs. When 2 POIs are very near or at the same coordinates, space them a little bit so that the number can be read
  • Scale, orientation, title, legend
  • Borders of the article, for instance greying out the area that is outside the scope of the article
  • Navigation to other articles
  • POI addition directly from the map

Projects

edit
ProjectStatusEmbeddable
in article
POIs
shown
POIs of other
articles shown
DemoSource
code
Goal
IdealDreamYesYesYes, loaded when scrolling-Open SourceEmbedded in each destination article, each region article, and on main page
PoiMap2de: used in 500+ articles ru: used in 1800+ articles fr: embedded in 1900+ articles
en: 19,000 pages using {{geo}}, embedded in 5000+ articles
Yes when use {{Mapframe}}YesNo, but layer with destinations that are adjacent.city map bike route Gpx-tracksOpen Source, GPLSlippy OpenStreetMap (OSM) map with special-icon, numbered, thumbnails, picture preview, clickable points of interest (in articles and maps), geolocation in mobile mode, free aerial tiles layer for USA with OSM labels, Wikivoyage and Mapquest layer with a simplified map style, parameters are now read directly from templates: listing, see, do, buy etc., marker. New layers destinations, GPX tracks, Contour lines, public transport lines, edge markers, frame layer.
Extension:MapsNot installedWhen extension is deployedNoNoOpen Source, GPLShow a slippy Google map at given coordinates and zoom level. Seems bound to replace Slippy Map.
Slippy MapUsableYesNoNobelowOpen Source, GPLShow a slippy OSM map at given coordinates and zoom level. Quite print-friendly, even though navigation controls could be removed in print version.
MapserverWidely used ? ? ? ?Open Source, MIT-style license
MapsourcesWidely usedNoNoNobelowOpen Source, GPLv3Links to a page with a slippy OSM map at given coordinates and links to other map websites. Points Of Interest are not shown.
ArtMapUsableNoNoNoShould be open-sourced soon by JoachimShows all geocoded articles on an OSM world map
geomapUsableNoNoNoShould be open-sourced soon by JoachimGenerate POI listing for a given point selected on a slippy world map
CheriotUsableNoNoYesProprietary?Google Maps with articles. Articles are bookmarkable after Facebook login, show summary when clicked.
WikisherpaUsableNoYesYesProprietaryGoogle Map of listings. See/Do/Buy etc. can be filtered, information displayed in sidebar. Articles are also displayed. Scrapes from WV and uses Google Map Geocoding API.

Current stage: PoiMap2 broader deployment

edit

Dynamic maps have now been deemed ready for broader manual deployment (although not an automated large-scale deployment):

  • Manually add maps to articles where an editor feels that a dynamic map would be beneficial and would not be adversely affected by known issues using {{mapframe}}. Guidelines for adding a dynamic map:
    1. Only add dynamic maps to articles at the lowest levels of the article hierarchy: cities, districts, and regions that are not further divided into additional regions.
    2. Dynamic maps should usually be added to the top of the "Get around" section, or the "Cities" section for a region article. If a map is added to a different location be sure to explain the reasoning in an edit comment or on the article's talk page.
    3. Do not add a dynamic map when a Wikivoyage-style static map is already present.
    4. Use the default map size (width/height) unless there is a specific reason for using a different size, in which case the reasoning should be explained in an edit comment or on the article's talk page. Zoom should be modified as appropriate.
  • Update {{listing}} tags with appropriate lat/long coordinates as outlined in Wikivoyage:Dynamic maps Expedition#Sub-expedition: Fill all the latitudes!.

To do

edit
  • Printing of external links - fix by totally removing all links? does Mediawiki:Print.css do anything? -- done, pdf version still wonky
  • Include same CSS code in Mediawiki:Mobile.css -- done
  • Guide on Wikivoyage:Geocoding, GPX tracks and template usage -- done
  • Open source code, code review - accessing a page may mean the page is effectively called twice, once for text and second time for parsing listings to map? Recommended practice? -- done
  • Refine icons on map server - reduce overall size, possible redesign
  • Allow the user to filter by type of POIs, for instance only "See", only "Eat", etc.
  • Show same icons on wiki, not just coloured squares?
  • When clicking on a POI number in a listing, move to embedded map instead of opening full-screen map
  • Continuous auto-numbering, non-continuous has problems matching up -- done, now continuous
  • Better title and legend
  • Change {{listing}} to match {{listing/sandbox}}. {{Mapframe}} and {{PoiMap2}} to be marked non-experimental.
  • Multilingual maps, street names are localised and not always in English - wait for Wikimedia tile servers
  • Internationalisation - only en, de, fr, ru and uk working for now, other WVs have their own listing templates
  • Image tool to copy static maps from dynamic maps - possibly ShareMap or other SVG tools
  • When POIs overlap, show the "See" POIs on top, as they are the most useful. Generally, the nearer to the top of the article the more important. Currently overlapping works the opposite, with hotels overlapping everything else.
  • Non-overlapping POIs. When 2 POIs are very near or at the same coordinates, space them a little bit so that the number can be read

Works on IE8 and above, Firefox 22. {{Mapframe}} may have compatibility issues with non-HTML5 compliant browsers.

Sub-expedition: Fill all the latitudes!

edit
A note about precision

At mid latitudes, a hundred-thousandth of a degree is only a few meters. That means that five decimal digits is overly precise. Only tiny statues and other items need five decimal digits of precision; use four for buildings, three for small parks and neighborhoods, and two or fewer for larger areas.

Goal: Every listing should have a latitude and longitude. Personal geodata and OpenStreetMap coordinates are preferred over other derivative sources. See also Wikivoyage:Geocoding.

Method 1: GPS

edit

Go to the place with a GPS or smartphone, and add the listing in this format: lat=12.3456 | long=45.6789

Method 2: GeoMap

edit

Open GeoMap. Select template "Lat/Long". Fill in a address eg. 33, Long Row, Nottingham or Wall Street Bar, Roppongi. The search is multilingual, but is limited to OSM recognized terms. Click on the red marker. Then transfer the values ​​displayed with copy & paste to the article.

GeoMap always returns coordinates with five decimal places. Thus, the markers in the dynamic map can be set precisely. Overlapping with other markers and existing map content will be effectively prevented.

Method 3: Geobatcher

edit

Use Geobatcher to find and map up to 100 coordinates at a time.

How to use Geobatcher
  1. Enter the city and/or country in the first field.
  2. Choose to search by either Name or Address. Searching by name matches OpenStreetMap's Points of Interest database, while searching by address relies on block addresses which may have gaps (eg cannot find 20 Main St between 1 Main St and 50 Main St).
  3. From the Wikivoyage article's Edit tab, copy-paste the listings into the large text field.
  4. Press the Find coords button. 1 listing generally takes 1 second to find.
  5. Listings whose coordinates have been found are mapped, and those without coordinates are marked with a question mark on the map.
  6. Drag and drop the markers to adjust the coordinates. If you don't know where the other listings are, press the Remove ?s button.
  7. lat/long attributes have been inserted in the third text field.
  8. Copy the listings of the third text field back to Wikivoyage.

Bonus: Search OSM using the textbox above the map, and the returned coordinates are listed and mapped with the red marker.

Method 4: ShareMap

edit
Sharemap org screenshot

ShareMap.org - open, creative commons, social mapping tool (http://sharemap.org) can be used to generate entire list of POI's for some articles. With ShareMap user can easily use search services (Nominatim), import OSM data (wizard or XAPI queries) or even calibrate old raster maps (please be careful the create content on CC licenses)

Detailed tutorial screencast can be found here - http://www.youtube.com/watch?v=Xc5F98q87uo

Method 5: OSM

edit

Go to this site and either use the search or zoom the map to the location of your listing. Center the map so the cross is exactly on top of your point of interest. Map coordinates are given under the search bar: copy/paste to Wikivoyage and you're done. Be aware that, just to annoy us, coordinates are given as long/lat instead of lat/long.

Method 6: Google Maps

edit

Please avoid relying on this method if possible as it would introduce a lot of licensing issues when collaborating with OpenStreetMap. If this method is used, be sure to name Google Maps as the source of the co-ordinates in your edit summary, if you have not just used it or Streetview to get a preliminary idea of the co-ordinates before refining them with OSM or another open source product.

Enable Google Maps's LatLng dropper as described here. Then find the place, and right-click, drop LatLng, copy-paste, add the lat= and similar parts. This also works on Google Street View, which is very convenient to recognize places where you have been, or check the name written in front of a restaurant.

You can also right click any spot on a Google Map, select "What's here?", and the coordinates will pop up in the search field.

Similar instructions at Wikipedia

Statistics for listing coordinates

edit

As of 17 June 2018

As of 9 May 2019

Articles with See listing with no coordinates by type and status in Category:See listing with no coordinates
Type/Status
Matrix
OutlineUsableGuideStarUnrankedTotal (line)
District 39 222 62 4 327
City 3854 2815 126 1 6796
Airport 17 13 5 0 35
Park 99 85 27 2 213
Total 4423 3238 236 7 16 7919

Sleep

edit
Articles with Sleep listing with no coordinates by type and status in Category:Sleep listing with no coordinates
Type/Status
Matrix
OutlineUsableGuideStarUnrankedTotal (line)
District 55 320 80 20 475
City 5357 3350 332 12 9051
Airport 10 14 3 0 27
Park 212 122 28 3 365
Total 5872 3888 488 35 9 10341
Articles with Eat listing with no coordinates by type and status in Category:Eat listing with no coordinates
Type/Status
Matrix
OutlineUsableGuideStarUnrankedTotal (line)
District 54 370 112 25 561
City 3183 3177 353 10 6723
Airport 4 18 6 0 28
Park 54 46 12 4 116
Total 3465 3678 490 39 4 7762

Drink

edit
Articles with Drink listing with no coordinates by type and status in Category:Drink listing with no coordinates
Type/Status
Matrix
OutlineUsableGuideStarUnrankedTotal (line)
District 33 284 94 24 435
City 1480 1942 276 10 3708
Airport 2 2 2 0 6
Park 18 14 4 2 38
Total 1626 2288 378 36 2 4373
Articles with Buy listing with no coordinates by type and status in Category:Buy listing with no coordinates
Type/Status
Matrix
OutlineUsableGuideStarUnrankedTotal (line)
District 32 322 78 25 376
City 1417 1670 233 11 3331
Airport 3 7 3 0 13
Park 212 122 28 3 365
Total 1530 1955 321 39 2 3883

Sub-sub expedition: Spotting mistakes

edit

Wikivoyage has a huge quantity of POI information, and thus contains mistakes as well. There are many ways to help fix the mistakes:

Sub-sub expedition: Geo templates

edit
  • Every destination (cities, parks, airports and countries; regions?) should have a latitude and longitude.
  • Currently 28,647 articles have associated coordinates out of 28,689 destinations.
  • Useful CatScan2 tool to check, though more robotic means should probably be used.

Sub-expedition: OpenStreetMap with style

edit
Default OSM above, Cloudmade-modified below

Goal: Produce the best possible visualization layer for OpenStreetMap (OSM).

Desirable map features:

  • Appropriate for a destination article. Country/area articles would use another style, but let's first concentrate on final destination articles.
  • Generally less colorful than default, so that POIs are immediately visible.
  • Print-friendly: No large zones of deep colors.
  • Do not make highways' color more visible than other roads: the map is intended for pedestrians, not for cars crossing the country.
  • Show tourism-related details more than other details.
  • See the procedure used when creating maps manually from OSM.

Proposed designs

edit
  1. http://maps.cloudmade.com/?lat=35.66262&lng=139.73060&zoom=16&styleId=92720 (Torty3)
  2. Choose layer WikiVoyage or layer Tourism at https://wikivoyage.toolforge.org/w/poimap2.php?lat=49.14378&lon=9.21903&zoom=16&layer=M&lang=de&name=Heilbronn (Joachim)
  3. (Add your design here. If possible add sources so that others can remix your work)


Expedition members

edit