OpenStreetMap's New Vector Tiles
OpenStreetMap has shifted to vector tiles in MVT format, improving customization and image quality. The article offers guidance on visualizing these tiles with QGIS and Python, highlighting data analysis near the Burj Khalifa.
Read original articleOpenStreetMap (OSM) has transitioned from hosting raster tiles to offering vector tiles in Mapbox Vector Tiles (MVT) format, enhancing user experience by allowing customization of styles and rendering rules. This change enables sharper imagery and the ability to switch label languages. The new vector tiles are expected to lead to the development of refined styles by the OSM community. The article details the technical setup for visualizing OSM's vector tiles using tools like QGIS and Leafmap, along with Python for data manipulation. It provides step-by-step instructions for installing necessary software, setting up a Python virtual environment, and rendering vector tiles. The author also discusses the analysis of data extracted from the vector tiles, including points of interest (POIs) in the vicinity of the Burj Khalifa in Dubai. The analysis reveals various amenities and cuisines available in the area, showcasing the richness of the data that can be accessed through the new vector tiles. Overall, this update marks a significant advancement in how OSM data can be utilized for mapping and analysis.
- OpenStreetMap has introduced vector tiles in MVT format, allowing for customizable map styles.
- The transition from raster to vector tiles enhances image sharpness and label language flexibility.
- The article provides a detailed guide on visualizing and analyzing OSM's vector tiles using QGIS and Python.
- Data analysis reveals diverse points of interest, including various restaurants and amenities near the Burj Khalifa.
- The OSM community is expected to develop refined styles for the new vector tiles over time.
Related
Adventures in mapmaking: the search for grayscale tiles
The author shares their tileset journey, starting with Stamen Toner and transitioning to WMS TopPlusOpen gray due to cost concerns. They later repainted OpenStreetMap tiles into grayscale for desired aesthetics.
Large-Scale Generation of Transit Maps from OpenStreetMap Data
The article details a pipeline for automated global transit map generation using OpenStreetMap data, focusing on scalability, performance evaluation, and providing open-source tools for future research and development.
Dynamic Viewpoint Symbols
Advancements in dynamic symbol rendering for maps enhance readability and interaction, featuring non-blocking tree symbols and viewpoint visualization with direction tags, supported by technical modifications to Mapnik.
Revisiting Overture's Global Geospatial Datasets
Overture Maps releases global geospatial datasets monthly, transitioning to a more efficient Parquet format. Their new Explorer app allows browser access, featuring address data for 14 countries to reduce project costs.
VersaTiles – a complete FLOSS map stack
VersaTiles is a Free/Libre and Open Source Software stack for generating map tiles from OpenStreetMap data, focusing on non-commercial use and providing resources for users and journalistic applications.
- Users express frustration over the lack of detail in vector tiles compared to traditional raster tiles.
- There are discussions about the rendering issues, particularly with Arabic fonts and label alignment.
- Some users appreciate the potential for customization and improved performance on low-end devices.
- Questions arise about the operational costs and efficiency of hosting vector tiles.
- Several users are curious about the practical applications and tools available for working with vector tiles.
The article has screenshots that very much demonstrate this difference. The first screenshot has, for example, a lot of POIs (statues, shops, theaters, viewpoints), highways that are different when they are bridges, different colors for grass vs parks, different line widths for different highways, sports fields, building and neighbourhood names, arrows denoting one-way streets, building parts, stairs, trees, and a lot more.
The second screenshot has none of that, aside from a single trolly station and a single street name (which is also rendered incorrectly).
I've tried a lot of vector styles (all openmaptiles styles, the base protomaps styles, all mapbox styles) and generators (protomaps, openmaptiles, mapbox). None of them come close to the amount of detail as the raster OSM tiles while still being as readable.
I've never found anyone as bothered with this as I am. Vector styles are cool as they zoom and pan very smoothly, and their style is fairly easily editable. But, for any map where you actually want to see map data instead of using it as a base map for your own data, vector maps fall short.
Maybe it is just because of computational limits. I can imagine that displaying the same amount of detail as the OSM raster tiles would require too many resources: both on the client side and for tile generation.
It would be nice if OpenStreetMap would try to mimic their raster style closer, instead of providing just another low contrast, low detail base map. I hope this release of open vector tiles will facilitate more detailed vector maps!
I expect that to work sub-optimally. Label dimensions are far from guaranteed to stay the same if you change language, and label dimensions interact with map layout, even influencing what to show.
If your labels grow larger, they may end up covering too much of the map or even overlapping. If they grow smaller, users may wonder why a city that was omitted before because of space constraints doesn’t show in the empty space created.
I'm just a bit puzzled by the "my workstation" section :-). There doesn't seem to be any relation to the rest of the article, not even high system requirements to do the things discussed after that.
So, every eg. city-shape-vector (well.. polygon) will cary the metadata/text of the name of that city in every defined language?
I am on QGIS 3.30 and many of the street labels at 1:31860 scale show up in red and are not aligned correctly.
Was fun to write and I learned loads!
Old eyes are inflexible.
import pathlib
pathlib.Path('7006.mvt.json').write_text(...)
or the historical alternative
with open(...) as f:
f.write(...)
Related
Adventures in mapmaking: the search for grayscale tiles
The author shares their tileset journey, starting with Stamen Toner and transitioning to WMS TopPlusOpen gray due to cost concerns. They later repainted OpenStreetMap tiles into grayscale for desired aesthetics.
Large-Scale Generation of Transit Maps from OpenStreetMap Data
The article details a pipeline for automated global transit map generation using OpenStreetMap data, focusing on scalability, performance evaluation, and providing open-source tools for future research and development.
Dynamic Viewpoint Symbols
Advancements in dynamic symbol rendering for maps enhance readability and interaction, featuring non-blocking tree symbols and viewpoint visualization with direction tags, supported by technical modifications to Mapnik.
Revisiting Overture's Global Geospatial Datasets
Overture Maps releases global geospatial datasets monthly, transitioning to a more efficient Parquet format. Their new Explorer app allows browser access, featuring address data for 14 countries to reduce project costs.
VersaTiles – a complete FLOSS map stack
VersaTiles is a Free/Libre and Open Source Software stack for generating map tiles from OpenStreetMap data, focusing on non-commercial use and providing resources for users and journalistic applications.