All Projects → Geovation → Labelgun

Geovation / Labelgun

🏷️ reducing label clutter across mapping libraries

Programming Languages

javascript
184084 projects - #8 most used programming language

labelgun

What is Labelgun?

Labelgun is a mapping library agnostic labelling engine. It allows you to avoid cluttering in mapping popups and labels, providing precedence to labels of your choice.

The library makes three assumptions:

  • Each label has a bounding rectangle (Min X, Min Y, Max X, Max Y)
  • Each label has a weight
  • You can provide a function that will hide and show a label (e.g. changing a CSS class or calling a mapping library method)

Labelgun example in leaflet


Using Labelgun

Use

You can use labelgun in your project via npm such as:

npm install labelgun --save

Or if you're using yarn:

yarn add labelgun

You can also use a auto-generated CDN thanks to unpkg :

https://unpkg.com/[email protected]/lib/labelgun.js

Docs and Demos

Check out the docs and demos live here

A nice interactive way to play with the demos locally is to use a hot reloading web server such as live-server:

npm install -g live-server

live-server

Developing

For instructions please see the DEVELOPING document.

Users

  • Vroom - Vehicle routing optimisation software
  • OL Mapbox Style - Use Mapbox Style objects with OpenLayers
  • qgis2web - A QGIS plugin to export a map to an OpenLayers/Leaflet webmap

Using Labelgun? Open a pull request and let us know!

Acknowledgements

Labelgun as an open source project was made possible thanks to Podaris.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].