ybon's diary

Recent diary entries

What's new in uMap

Posted by ybon on 25 August 2014 in English (English)

Here is an overview of the changes made in uMap recently:

The biggest change, even if it’s not the more spectacular, is that Leaflet.Draw has been replaced by Leaflet.Editable as drawing engine. The goal was to have more control over the API, have touch support, and have multipolygon/polyline support. For now two enhancements come from that move:

  • It’s now possible to continue a line. There are two ways to achieve this: right click on the last (or first) vertex of the line, or ctrl-click on the first or last vertex:

    continue a line

  • It’s now possible to draw (and edit) polygon holes: right-click inside of a polygon to start creating a hole:

    create a hole

Next step is to handle multipolygon and multipolyglines editing and touch support (Leaflet.Editable is ready for that, but uMap itself need a bit more work).

  • when clicking on an element (marker, polygon…), it’s now possible to open a panel, instead of the classic Leaflet popup

popup panel

example of story mapping activate slideshow

  • When using a clustered layer, it’s now possible to define the cluster text color:

    change cluster text color

  • Added a basic GPX and KML download, thanks to togpx and tokml:

    download data

  • Until a proper multipolylines support, they are now merged (instead of being skipped) at import

  • A table editor allows to edit all elements of a layer in one view:

table editor

  • sometimes, we want a polygon to act as background, without being clickable. This is now possible trough the clickable option.

  • it’s now possible to take control of the popup template using variables. Those variables will be populated dynamically from the elements properties. For example, let’s say you have imported a geojson having the following properties: price, name, image, description; by default, only the name and the description will be displayed. But you can now take control of this. Here is an example of template to use with such data:

      # {name}
      Price: **{price}**
  • Added shortCredit (displayed in the attribution bar) and longCredit (displayed in the caption panel) properties, for more custom captions

  • a basic HTTP concurrency control has been added: if two persons edit a given layer of a same map in the same time, the last to save will be prompted that its changes will erase the changes made by someone else and asked for confirm before really saving:

    example of save conflict

  • the “filter” field in the data browser was only filtering on the name property of the elements; this can be now controlled in the map properties

  • added a datalayers parameter, to override which layers will be visible on map load (useful to have different URLs for the same map, or when using the iframe exporter)

  • it’s now possible to set a marker lat/lng properties by hand:

    set marker latlng

  • it’s now possible to import multiple files at a time

  • when importing files, it’s now possible to create a new layer on the fly (one layer per file when importing multiple files)

  • GeometryCollection are now imported

  • dataUrl and dataFormat querystring parameters have been added, to fetch and import remote data when creating a map; so for example an external site can point to to allow users to create a new map with some data already imported. For example click here to create a map with OSM data of Sark Island

More about uMap on the wiki:

Good umaping!

Heatmap made easy with uMap

Posted by ybon on 21 April 2014 in English (English)

I’m working on adding a new type of layer in uMap: heatmap. Here is a demo

heatmap on uMap

When creating a new layer, you can now chose between three types: Default, Cluster or Heatmap (new). And you can still switch from one type to another once created.

layer switch

When editing a heatmap layer, two new advanced properties will appear (both are optional):

  • heatmap radius: this allows you to override the default radius of the heatmap, which is by default 25px

  • heatmap intensity property: you can define a property of your feature (say a property of the geojson you have uploaded) to be used as intensity factor; for example, in the demo I’ve set up, I’ve added “CIRCONF” as intensity property, which is the circumference of each tree used of computing the heatmap.

Many thanks go to @mourner for the plugin Leaflet.heat.

Once again, this is a working progress easter egg, please test and give feedback!

GeoRSS support added on uMap

Posted by ybon on 21 April 2014 in English (English)

I’m adding support for importing GeoRSS in uMap. This has been requested by some uMap users. One of the use cases is to be able to easily display on a map a feed from Flickr. I’ve made a demo with the last public geotaged photo added to Flickr.

georss on uMap

You should now be able to do the same with your own feeds. Here how to reproduce, once created a map:

  1. get your geo feed from Flickr (in my example it’s, remember to use the format rss_200_enc) or any other provider of RSS 2.0 with GeoRSS
  2. on your map, edit the layer, and add the URL as remote data url
  3. choose georss as format
  4. Click on Proxy Request, as Flickr doesn’t allow CORS on its feeds
  5. on advanced properties, choose GeoRSS (title + picture) as popup template

And you’re done!

This is work in progress, please test and give feedback :)