Ask the Expert
Jose Angel Parreño
Front-end engineer
How does the technical framework behind Global Fishing Watch’s map support visualizations of large datasets?
The Global Fishing Watch map allows anyone to analyze human activity taking place across the ocean at different geographic and time scales. Map users can perform a range of tasks with this information, from inspecting the identity and detailed behavior of a single vessel over a given period of time to finding large-scale patterns for thousands of vessels over multiple years.
In addition to our core datasets, such as apparent fishing effort, vessel presence or satellite detections, managers and scientists can analyze dozens of other datasets from numerous organizations and even add their own to the map. This can be done all while allowing full customization of how the data looks and retaining the ability to apply filters such as classifying vessels by flag or fishing gear type in real-time.
Recent enhancements to the platform have improved the clarity and resolution of how data is visualized in the Global Fishing Watch map, providing users with options for higher resolution views. © 2024 Global Fishing Watch
There are a variety of ways people interact with our map–its uses span a number of governance areas. From an engineering standpoint, this means we have to create a completely modular tool in which each component must be versatile and reusable.
We recently updated the framework that makes the geospatial visualization possible in our platform and are now using deck.gl, an open source library maintained by the OpenJS Foundation that allows us to create high-resolution, complex visualizations in an efficient way. The previous version of our map was based on MapLibreGL, another great open source library, but our ambition to provide significant performance improvements, high resolution layers and unlock future potential features to better support managers and researchers dictated a need for greater modularity in our framework
Since the map can display information from past years and not just the last few days or months, loading data efficiently is a necessity—and one of the biggest technical challenges we face. To tackle this, we created our own infrastructure and data format, which we call 4Wings, a combination of open-source technologies that renders billions of data points with fast response times and supports dynamic filtering and different ways of interacting with data. In the past, we had to maintain our own version of the MapLibreGL library to support 4Wings, but deck.gl allows us to extend its multiple modules with our own, providing more precise control of how the map looks and works.
One advantage that deck.gl gives us is greater flexibility when it comes to generating visualizations for different types of human activity data. These can help support a wide array of different ocean governance and research use cases like the management of protected areas and maritime domain awareness. The new version of the map automatically adjusts the color ramps of each data layer shown on screen, better facilitating the work of analysts and researchers in understanding patterns of behavior.
Color ramps serve a visual representation of data on the map. Our shift to the deck.gl platform provides more dynamic range in how they are shown. © 2024 Global Fishing Watch
The updated map also allows users to change the resolution of the heat maps to prioritize faster data downloads or higher-definition visuals.
Map users can now control the resolution of heat maps within the platform to best match their needs. © 2024 Global Fishing Watch
It also displays all vessel positions individually, which makes identifying the actors behind any given activity much easier than before.
Map users can now switch to a vessel positions view that shows vessel names and their specific activity for a more detailed review. © 2024 Global Fishing Watch
Thanks to the deck.gl framework, our map is able to process and transfer information much more efficiently—and display a lot more data. Instead of just relying on a computer’s central processing unit, deck.gl also interacts with the graphics processing unit, which enables better performance across each function and allows for better visuals, like higher-resolution heat maps.
A side-by-side comparison of simultaneous movement patterns by multiple vessels depicted on the previous platform (left) and using the new deck.gl platform (right). © 2024 Global Fishing Watch
Good things take time. And while the recent update to the deck.gl framework has taken more than a year of work, it is just the beginning of what’s to come in data visualization enhancements. We are excited to unlock new ways to revolutionize ocean monitoring and analysis—and make them freely available to anyone.