Exploring the Great Lakes through data.
I was perusing Reddit the other day and I came across a post where a user was looking for high quality lake bottom bathymetry for Lake Superior. From some past projects I had done, I remembered that there was an open data site that shared high quality ecological data for the Great Lakes which included DEMs of all of the lake bottoms. The Great Lakes Aquatic Habitat Framework (GLAHF) is more than just an open data repository. It also aims to provide a spatial framework for:
…the standardization of geospatial data to a hierarchically nested set of grid cells to be used as building blocks for informing management decisions and developing other spatial products such as aquatic habitat classification, nearshore assessment, and decisions support tools.
I have not had a chance to explore the framework but more information about it can be found here:
https://www.sciencedirect.com/science/article/abs/pii/S0380133015000659?via%3Dihub
Data and Maps
The GLAHF also provides a number of static map products, a custom web application, and downloadable data. The static maps built from data available on the site are impressive:
One of the only downsides is that most of the data appears to be provided via geodatabases. Geodatabases can be used in QGIS via the OpenFileGDB specification but it cannot handle file geodatabase rasters. When researching this, I came across an interesting project on Github called ArcRasterRescue which is designed to get at these rasters.
It is relatively easy to setup ArcRasterRescue to export rasters inside a file geodatabase to geotiffs on Ubuntu. First you can either download the package using git, or the zip file directly from here:
https://github.com/r-barnes/ArcRasterRescue/releases
Unpack the files to a location of your choice. Then, download the required packages. (Note: I did not try this with Docker but an image appears to be available):
$sudo apt install cmake libgdal-dev zlib1g-dev g++
Once the dependencies are installed, cd into the ArcRasterRescue-1.0.1 folder and run the following:
~/ArcRasterRescue-1.0.1$ cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo
Then run:
~/ArcRasterRescue-1.0.1$ make
This should create the arc_raster_rescue.exe file in the ArcRasterRescue-1.0.1 folder:
Now you can run the program to see which rasters exist within a geodatabase. I ran this against the Lake Superior Bathymetry dataset:
$ ./arc_raster_rescue.exe /path/geodatabase.gdb/
As noted in the README, the path MUST have a slash at the end.
The program found a single raster with id 0 called bathymetry_superior. Now we can extract it:
$ ./arc_raster_rescue.exe /path/bathymetry_superior.gdb/ 0 /outputpath/test.tiff
Success! We can now add the .tiff to QGIS as a raster layer. I repeated the same process with the mean ice coverage dataset and exported the 2014 ice coverage layer using ArcRasterRescue:
Conclusion
While nothing flashy, this open data source provides a wealth of valuable physical, biological and even socioeconomic data for the Great Lakes. And even if you don’t have access to ArcGIS, you can use ArcRasterRescue to extract the data that is provided as raster datasets inside file geodatabases. I hope you can use this data to explore one of my favourite geographic features on the planet.
References: