Fix Labeling Limitations for Vector Tiles

9913
28
08-08-2016 10:12 AM
Status: Open
ChrisBardash
New Contributor II

Currently vbnewline or other similar label formatting options (Javascript or Python) for breaking labels over multiple lines is not supported in ArcGIS Online when creating vector tiles.  This functionality is very basic cartography and has been supported for many years in the desktop world.  At the very least, these sorts of shortfalls should have validation rules that let the user know this is not an option before publishing.

28 Comments
MarcoBoeringa

To be honest, I think what is really needed for advanced - topographic map style - cartography is a bye-bye to dynamic labelling and styling in vector tiles, and instead introduce, at least optionally, to fully anchor each and every individual label character of a label in a vector tile, including its position, rotation, symbology (font, color, size) etc.

What I am actually suggesting is a kind of "vector tile annotation", where labels and label positions are fully pre-computed and stored, as in an Adobe PDF file exported from ArcMap or Pro.

This somewhat goes against the basic concepts of vector tile styling and rendering, where rendering of the labels and label placement is supposed to happen dynamically on the client.

The Maplex label engine though, has so many great options that likely will never be implementable in vector tiles, it would be a shame not to be able to use it to pre-compute and place labels using it, and then subsequently export it to vector tiles knowing the positions are fully retained.

ThomasColson

A true cartographer (which I am not) will never allow software to determine label placement. I miss the good old days of when one Topo Map author was very meticulous in his contour lines and stream labels, and the guy who did the next quad wasn't. 

MarcoBoeringa

A true cartographer (which I am not) will never allow software to determine label placement.

I partly agree, but to dismiss automatic labeling entirely, is not the way to go. In fact, Maplex labeling, through its settings, incorporates many of the "natural" and intuitive things cartographers would do to place labels. It is to a large extend build from a "cartographers" point-of-view.

The big thing though with using Maplex, is that you really need to spend time with it to fine-tune its settings and to learn how to use them effectively. That - to me - is in essence very much equivalent to "never allow software to determine label placement". You, as the cartographer, should be in charge of what Maplex does.

This is by no means an easy task, just like fully manually annotating a map isn't. One reward of Maplex is though, that once you set it up appropriately, you can repeat the labeling, and process maps from all over the globe using similar settings if an appropriate global dataset is available.

Here are just two examples of maps I created using OpenStreetMap data, and that heavily rely on Maplex (in fact, all labels were placed by Maplex). I spend a huge amount of time fine tuning the used labeling settings, and there are in fact hundreds of labelclasses at work here.

These maps are by no means perfect, and there are definitely things one might do differently when placing labels manually, but I do think the Maplex results are by no means to be dismissed.

ThomasColson

National Geographic has a "Do you have what it takes" contest.....surely you entered and won? A blog post on how you did that is called for!

MarcoBoeringa

Actually, I had two A0 posters based on my ArcGIS Renderer for OpenStreetMap up at the map gallery at NACIS 2017. One of the people speaking out his appreciation, turned out to be working for National Geographic... so I guess I already got that thumbs up ;-).

As to a blog post: this is the result of four years of development and research by me personally on that Renderer, which is a combined Python / Modelbuilder toolbox that I build from the ground up as a pure ArcGIS solution for working with OpenStreetMap data in ArcGIS. Although in the most recent version I am also capable of using an osm2pgsql created PostGIS databases as a datasource, whereas I initially set out to use the ESRI ArcGIS Editor for OpenStreetMap import options to create File Geodatabases for rendering (functionality which is still there).

This is, however, a project to big for a simple blog post.

Stay tuned for more though... I have more plans with this Renderer!

by Anonymous User

We have been struggling with the same types of issues. the label options in PRO are extensive. we would like vector tiles to take advantage of more of these options.

WorcesterGTSS

It would nice to have a solution for the repeated labels issue - for the tiles to reflect the settings in ArcGIS Pro. Besides that, the vector tile creation process seems to work really well.Screenshot 2022-04-07 112111.png

MichaelMorisette

We would also love to transition our basemaps to vector tiles, but are running into these labeling limitations preventing us from giving an acceptable product to our end users.  In our case, it seems like label weight settings from Pro are largely ignored when creating the tiles.

Here is a screenshot of our (traditionally) cached basemaps (decent automatic label placement)
image.png

And the same thing recreated as vector tiling (not nearly as good placement despite having identical labeling in Pro):
image.png

It seems Esri's own vector basemaps have noticeable label overlap as well, so I presume this isn't anything we're doing?
image.png