Author: Justin Madron

The Preserve at Los Altos Trail Map

It’s been a while since I’ve worked with print media, I’ve been focused on web based mapping for the last couple of years.  This project turned out to be much more challenging than I anticipated. I have grown comfortable with displaying multiple levels of information through interactivity and dynamic visualizations. I sought out this project because I wanted to try my hand at a print map and thought it would be a challenging and rewarding experience.

The project was for The Preserve at Los Altos Resort in Costa Rica. They have access to a number of trails and wanted to provide a large format map that would be used to help orient guest to different beaches and amenities. The trail lines where collected via the resort manager and sent as KMZ files.  Along with the trail lines were amenity locations and other Points of Interest. I imported all of this into ArcMap for processing.  The trail lines were really detailed and contained a fair amount of noise, so they had to be cleaned up and organized.

Organizing and Making the Trail Lines 

The first step was to clean the lines as much as I could in ArcMap before exporting. I deleted slivers and made sure each line had the correct attributes (Easy, Medium, Hard). The difficulty levels were provided by the resort and were really important to include in the overall map. Other attributes included the name of the trail and the length. Along with the trails were the points of interest. These were simple points with the name and category (Lookout, Restaurant, Amenity). After the trails were in decent shape, I exported them to Adobe Illustrator for styling, by exporting them as a AI file.  Since Arcmap exports these as vector layers you can easily manipulate each line to fit your style in Illustrator. Some additional editing was done in Photoshop in the final stages of the design, which I talk about below.

 

 

Imagery for Basemap

A satellite image basemap was a necessity by the resort. They wanted their users to be able to pick out features and see the various beaches along the coastline. Thanks to my very talented colleague, Nathaniel Ayers at the DSL, we were able to take this Digital Globe imagery and apply Photoshop effects resulting in alterations to the imagery seen below. The original satellite image was adjusted to increase contrast and saturation, and bring out detail. The gradation in the ocean caused by compression was smoothed out, along with de-emphasizing/eliminating some features – boats, rocks that may distract the viewer once legends and text are added. When the color palette was finalized for text and labels, the base image was de-saturated by adding a Black and White adjustment layer, with some transparency to allow for a hint of color to remain.

 

Final styling and touches

I would like to thank the Spatial Community for their design critic and constructive feedback– especially The Map Smith— it wouldn’t have turned out the same without their help. If you haven’t joined, you are missing out on some great people and conversation! OK, back to the map. I combined my three layers (basemap, trails, and amenities) into a Photoshop file and added effects to the trails such as Bevel and Emboss.  I added the trail labels via legend and symbol method, instead of labels on the lines. This was after much debate and trial and error. I felt it made the map cleaner and more legible given the darkness and contrast of colors on the basemap.  Points of Interest were added using a light, hollow circle and beaches were labeled in blue with their distance from resort. Lastly the points of interest were added with photo’s provided by the resort and descriptions.

 

I am really happy how the map turned out, especially the high contrast of the trails, which was the subject of the map. I enjoyed the challenges of a print map and the discussions with other talented cartographers. There were many “failed attempts” that I haven’t shown in this write-up, but trust me, there were many. This was my first ArcMap/Adobe map and I’ve only scratched the surface of this powerful duo.

 

Happy Mapping!

 

 

Digitizing the HOLC Collection for Mapping Inequality

The DSL recently released its first atlas map since the launch of American Panorama in December 2015. Mapping Inequality: Redlining in the New Deal America brings to life the study of New Deal America, the federal government, housing issues, and inequality by offering complete online access to the national collection of “security maps” and area descriptions produced between 1935 and 1940 by the Home Owners’ Loan Corporation (HOLC). To read more about HOLC and the New Deal visit the Introduction.

Since this blog focuses on “all things spatial”, I wanted to touch on the massive amount of GIS work that went into creating this project. First, I would like to acknowledge all of our student interns at UofR, who spent countless hours (don’t worry we paid them) making this possible. I would also like to thank our collaborators at Virginia Tech and the University of Maryland for their contribution to the GIS efforts to make this project possible.  The students learned a great deal about the process of georeferencing, digitizing, database management, and topology rules. Most of the students, prior to working at the DSL, have never worked with GIS or spatial data. Here are some stats and figures that show just how much work went into creating Mapping Inequality that a majority of people don’t know.

-Georeferencing was by far the largest task of the project. Georeferencing the cities varied significantly in time depending on the size and layout of the city. One reason we added the large number of control points, was to insure that roads lined up correctly when compared to the modern day basemap. Once rectified, they were tiled and served out to the application. Note: all of these maps are downloadable via the site.

  • 166 maps
  • As many as 2,147 control points in a map
  • The average is 734 (per map)
  • 72,024 control points (144k+ clicks)

-Vectorization of the neighborhoods– via the rectified maps– required a lot of hands on digitization work. Topology rules played a large role in insuring the quality and accuracy of the
polygons digitized.

  • 7,513 polygons
  • As many as 498 vertices in a polygon
  • Average of 31 vertices
  • 229,829 vertices (clicks)

-Data Entry (polygons) Each polygon had up to seven fields that needed to be manually entered. These fields included key attributes for the project such as HOLC grade, polygon_id, and name of the neighborhood.

  • Up to seven fields for each polygon (id, grade, name, etc.)
  • About 45,000 data points

 

-Data Entry (Area Descriptions) Entering data for the area descriptions was very slow, hence the reason we have completed only 17 cities thus far. Some cities included up to 94 fields for each neighborhood. Some fields included whole paragraphs (like the one seen below).

  • Up to 94 fields per neighborhood
  • So far 94,719 individual fields completed for 17 cities
  • Estimated about 900,000 when completed

Overall, completing all of the GIS work stated above, took 4+ years to complete. Managing this ongoing collaborative project had its hurdles, but overall, went smoothly. Allowing students to work simultaneously and quickly resulted in 45GB+ of data in the end. We hope to work with the University of Maryland on their crowd sourcing platform to complete the remaining 150 or so area descriptions. Enjoy the project and hope you can use the data to uncover new stories and questions.

 

*If you are interested in learning more about the methods we used to complete this project, click on the link below and download the training manual.

HOLC Map Georeferencing: A Training Manual

 

Thanks to all of our great students!

Credit: Rob Nelson calculated the statistics and Nathaniel Ayers created the header photo. 

Contemporary Cartographer?

After reading an article from Crain’s “The next hot job: Cartographer” I starting thinking about my background and how it ultimately lead me to mapping. I have struggled with calling myself a cartographer for a while because of my none-traditional background, until the other day. It seems I am not alone in what they consider “contemporary cartography”.  After looking back at my final Landscape Architecture project, I came to realize just how close Cartography and Landscape Architecture are in their most basic forms—representing data, designs, ideas, and issues in a visual form. This is at the heart of what Cartographers and Landscape Architects do.

I realized that elements found in most landscape Master Plans are just diagrams that help the user envision features in a geographic space. Could these be considered maps? What is a map? By definition a map is “a diagrammatic representation of an area of land or sea showing physical features, cities, roads, etc.” Let’s take a planting plan of a city park for example. It is a diagrammatic representation of an area where certain data “plants” are spatially located. We are starting to see cases where people are pushing the ideas of what a map actually is and I think having a non-traditional and diverse background is what has sparked innovation in “contemporary cartography” that the article speaks of. I am excited about the future of cartography in the fact that companies like Carto and Mapbox are providing the tools necessary for easily accessible mapping.

So it looks like I can attribute my excitement and interest in mapping to my Landscape Architecture training, because at the end of the day I am still helping people visualize things that are not easily understood with words and can only be seen in diagrammatic representations!

Updated Richmond Then and Now Application

After some issues with ArcGIS Online, I decided to re-think the Richmond Then and Now application. A while back, I stumbled upon Chris Whong‘s blog post about the Urban Scratchoff application he built using Leaflet.js and thought it would be a good candidate for the Richmond project. The application lets you explore two different maps (one current and one historical) by “Scratching off” one of the maps to show the other. This is similar to the “spy glass” concept in the original application, but with a little more flair and functionality.

The application lets you explore Richmond, Virginia in 1876, a decade after the end of the Civil War compared to present day Richmond. Wonderful details of buildings and their owners, parks and public buildings over-layed with a current aerial image of the city. Pan around and explore the city and use the “Scratch Off” button to see what has changed from 1867 to present day. Hit the swap button below to reverse the layers and the Pan & Zoom Map icon to move around and zoom.

If you are interested in the nitty gritty details of the application visit the about, Chris’s blog or fork the code on Github.

*Special thanks to Chris Whong for developing the code and sharing it with the world!

Click on this Link to check out the new updated Richmond Then and Now!

Richmond Then and Now Scratchoff

Richmond Then and Now Scratchoff

Aggregating points in CartoDB–Using PostGIS

Prisons_National_edited

I recently starting working with a dataset that contained multiple points in the same city–In our case, Civil War prisons.  For instance, there where 11 different prisons in Richmond, Va (Image right). The problem is visualizing these at the national scale. When viewed at this scale, you get a mess of overlapping points, making it hard to understand and compare locations across the U.S.

Below are the PostGIS functions used in this query:

  • ST_TransformReturns a new geometry with its coordinates transformed to the SRID referenced by the integer parameter.
  • ST_CentroidReturns the geometric center of a geometry.
  • ST_Multi — Returns the geometry as a MULTI* geometry. If the geometry is already a MULTI*, it is returned unchanged.
  • ST_CollectReturn a specified ST_Geometry value from a collection of other geometries.
  • ST_DumpReturns a set of geometry_dump (geom,path) rows, that make up a geometry g1

 

The final query, which summed the columns and aggregated the geometry into a single point:

aggregate_code

 

 

 

 

Copy & Past Version:

SELECT column, sum(field1) as field1, sum(field2) as field2, st_transform(ST_Centroid(ST_Multi(ST_Collect(f.the_geom))), 3857) as the_geom_webmercator 
FROM (SELECT column,field1, field2, cartodb_id (ST_Dump(the_geom)).geom As the_geom 
FROM tablename ) As f 
GROUP BY column

This query resulted in a nice cleanup of overlapping points. Second steps are going to include only utilizing this query at high zoom levels, as to provide the original detail when looking at particular cities.

 

prison_locations

Get your Atlas of the Historical Geography of the United States!

Having worked on the Atlas of the Historical Geography of the United States project for nearly two years at the DSL, I could’t help but want a copy. The only issue; they are rare and the price has inflated since the first asking price ($15). After perusing the internet for an Atlas, I stumbled upon a brochure advertising one of the greatest historical atlases of our time! The brochure opens up to nine spectacular “specimen maps” highlighting a couple of maps from the Atlas. It has a brief table of contents which outlines the number of maps in each subtopic, and a whole leaflet devoted to the Sectionalism in American Politics for the upcoming election. My favorite part of the brochure is the description of the Atlas and intent–“Although intended primarily for writers, editors, teachers, and students, the “Atlas” will be consulted by a wide public–especially by men of large affairs, leaders in public life, and Europeans who would obtain in graphic form authentic information on the development and internal structure of the United States”.

No advertising would be complete without an order form:

Atlas Brochure Order Form

 

Below are scans of the entire brochure. Hope you enjoy it as much as I have, and although I don’t have a copy of the “Atlas”, this is the next best thing!

Photo Credit: Angie White

 

Multiple Ring Buffer in CartoDB using PostGIS

I am fairly new to PostGIS and SQL queries. I had trouble finding examples demonstrating Multiple Ring Buffers in PostGIS–more specifically in a larger CartoDB SQL query. I needed to create a multi-ring buffer on the fly–which is why I couldn’t complete this in ArcMap or QGIS. Here is what I was attempting:

Multiple Ring Buffer Analysis Illustration

Multiple Ring Buffer Analysis Illustration

I contacted CartoDB support (very helpful) and they provided me with the following code which created the multi-ring buffers. However,  the rings overlapped.  If you are creating multi-ring buffers for aesthetic purposes, then there is no need to go any further than the code below. You can just rearrange them to get the correct look:  SELECT * FROM table_name ORDER BY position DESC

Overlapping Multiple Ring Buffers:

ALTER TABLE table_name ADD COLUMN position INTEGER;
INSERT INTO table_name (the_geom, position)
SELECT (ST_Buffer(the_geom::geography, 1000)::geometry), 1 FROM points_table;
INSERT INTO table_name (the_geom, position)
SELECT (ST_Buffer(the_geom::geography, 2000)::geometry), 2 FROM points_table;
INSERT INTO table_name (the_geom, position)
SELECT (ST_Buffer(the_geom::geography, 3000)::geometry), 3 FROM points_table;
INSERT INTO table_name (the_geom, position)
SELECT (ST_Buffer(the_geom::geography, 4000)::geometry), 4 FROM points_table;

The buffers were part of a larger query that later included an ST_Intersection function, so the buffers needed to be concentric rings that did not overlap. I came up with the following solution which basically buffers a buffer and then takes the difference to “cut out the overlapping portions”. This might not be the most elegant solution, but it worked perfectly for our application which generates these on the fly.

Multiple Ring Buffers:

ALTER TABLE table_name ADD COLUMN position INTEGER;
INSERT INTO table_name (the_geom, position)

SELECT

ST_Difference(ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,4000)::geometry),4326),ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,3000)::geometry),4326)) as the_geom_webmercator,
4 FROM points_table

Union all

SELECT

ST_Difference(ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,3000)::geometry),4326),ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,2000)::geometry),4326)) as the_geom_webmercator,
3 FROM points_table

Union all

SELECT

ST_Difference(ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,2000)::geometry),4326),ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,1000)::geometry),4326)) as the_geom_webmercator,
2 FROM points_table

Union all

SELECT
ST_Difference(ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,1000)::geometry),4326),ST_Transform(
(ST_Buffer(ST_SetSRID(ST_MakePoint(-77.4444325,37.5343969),4326)::geography,1)::geometry),4326)) as the_geom_webmercator,
1 FROM points_table

 

Hope this helps!

Multiple Ring Buffer

“The Ideal Historical Atlas”

Image created by Nathaniel Ayers

Image created by Nathaniel Ayers

As we get closer to releasing the first four maps of American Panorama: An Atlas of United States History, I look back on Charles O. Paullin’s 1932 Atlas of the Historical Geography of the United States.  My first year at the DSL was spent collecting, formatting, organizing, and building the database for the online version of the Atlas. The Atlas contains nearly 700 unique and beautiful maps, ranging from topics such as the number of Cattle, Explorations, and Rates of Travel. I have always been awed by the craftsmanship and effectiveness of these maps which were published over eighty years ago.  Recently there has been a lot of interest in “retro” maps and recreating them with new data. The Paullin Atlas is a little different in this regard, in that we added underlying data and implemented “A Shiny New Interface for a Classic Atlas” according to National Geographic. Wright thought the maps in the atlas were limited and could be more effective if visualized as a “collection of motion-picture maps.” This is what we tried to accomplish along with being respectful of the original plates in the Atlas. Still to this day Charles O. Paullin’s Atlas is considered one of the most impressive atlases of American History. With the help of our friends at Stamen Design, I look forward to sharing American Panorama with everyone and hope to push the envelope like Wright and Paullin did when trying to create “the ideal historical atlas.”

1853 Richmond and its Slave Market

Crowe-Slaves_Waiting_for_Sale_-_Richmond,_Virginia

The video of 3D Richmond is finally up for your viewing pleasure. To learn more about the project visit the Visualizing the Past article. The video follows the route of English painter Eyre Crowe’s visit to the city in March 1853. He arrived along the the Fredericksburg and Potomac Railroad and stayed at the high-end American Hotel one block south of Capitol Square. On his first full day in the city, hoping to find “a possibly dramatic subject for pictoral illustration,” Crowe set out into Shockoe Bottom to witness several slave auctions. Crowe recorded what he saw there in his powerful painting Slaves Waiting for Sale

Over a hundred and fifty years later many seek to understand more about the slave trade. The sites where people were bought and sold in Richmond have been obliterated by twentieth-century development, many of them under an interstate. This video is meant to help viewers imagine what the built environment of mid-nineteenth-century Richmond looked like and recognize the significant physical footprint of slave trading in its commercial district.

capitol_composite

Image by Nathaniel Ayers

 

The Fall of Confederate Richmond Envisioned Through Mapping

Richmond_Virginia_damage2

Damage by the Evacuation Fire of 1865

We have been diligently working on a new project for the Commemoration of the American Civil War 150th Anniversary and the Fall of the Confederacy in Richmond. More specifically, the “Richmond’s Journey in Nine Questions”- A “Pop-Up” Museum on Capitol Square. We wanted to help address questions like what was happening in Richmond on April 2nd-4th 1865? When was the evacuation fires, and how much of Richmond was burned? What better way to do this than with maps! The goal of the project was to map the events leading up to the fall of Richmond.

On the morning of Sunday April 2, 1865 Confederate lines near Petersburg broke after a nine month seige. The retreat of the army left the Confederate capital of Richmond, 25 miles to the north, defenseless. The video we created provides a visual overview of some of the most significant events of the dramatic days that followed.

Over the next three days, the Confederate government evacuated, mobs looted countless stores, fire consumed as many as a thousand buildings, the Union army occupied the city, thousands were emancipated from bondage, and President Abraham Lincoln toured the former Confederate Capital. The animated map illustrates how these momentous events unfolded in time and space.

Spatial data was created using first hand accounts of events. For instance, Lincoln’s visit relied on the detailed account provided by Michael D. Gorman’s “A Conqueror or a Peacemaker?: Abraham Lincoln in Richmond” that appeared in volume 123.1 of the Virginia Magazine of History and Biography. Points were placed on locations mentioned in the article and a time attribute was associated if applicable. Lines were drawn between points to simulate a path and additional points were added along the line. These points fire one at a time which gives the appearance of a person moving along the streets.

For the Evacuation Fires we used historic maps detailing the extent of the fire and relied heavily on research of others. Based on historical burn extent maps we recreated the burn extent using F.W Beers footprints that were used for the 3D Richmond project. We scoured the research and found approximate times of when the fire started and when it reached certain locations. From this, I created buffers to approximate the fires’ spread. This was used to randomly distribute points within the footprints and blocks (Image above). The time attribute from the buffer analysis was joined to the points and a random start and end time was given within the time range to help the fire seem more organic and less structured.

Fire_Analysis

Each event was added to CartoDB which utilized its visualization tools. Each visualization was then packaged using Leaflet’s mapping library. To read more about the project and see the video click the image below!

fire

%d bloggers like this: