1. Fun Map I Updated For My Company’s Announcement Today. Original Map Here.

     

  2. Did a presentation today on Open Data to a regional GIS Users group. Some background: there are about 15 or so counties in this area with a total population of almost 2 million, the region is the 37th largest MSA in the US.

    Only 2 of the counties had GIS data available for download and free, some still charge $$hundreds$$ per layer of information. As a citizen of the region, my point/plea was introduce the concept of open data to this group of about 50-75 attendees.

    Some interesting notes, I asked for a show of hands on several topics:

    • Heard of OpenStreetMap: 25 Or So
    • Heard of GitHub: 2-4
    • Heard of GeoJSON: 2-4

    The full presentation itself is online, and full of interactive links thanks to the magic of reveal.js.

    As always, I’m happy to discuss/answer questions.

     

  3. How To: TileMill/MapBox

    Turning Your Amazing-er Map Into An Interactive MapBox Map

    1. Find A Map

    For this example, I found a map showing US GDP; Split In Half. This map shows urbanized areas of the United States where the combined GDP is half of the rest of the country. While it provides a stark contrast of where the core of US GDP is created, it could be Amazing-er if some context was provided (IMO).

    2. Find The Source Data

    Some basic Googl-ing of GDP led me to the Dept. of Commerce / Bureau of Economic Analysis To the right of their page is downloadable reports of their analysis. Choosing the tables only option gave me this excel file. The data shows GDP by Metropolitan Statistical Area (MSA), which are metro areas containing a core urban area population of 50,000 or more. It also includes a ranking if each MSA. To provide further context, I’m also going to get the population per MSA, which I found at the Census Bureau.

    3. Obtain/Create GIS Data

    Now that I have the source data, I need to join it up to some GIS data. Both spreadsheets I downloaded list the name of the MSA and the CBSA (Core Based Statistical Area) code for each MSA. I was able to find the authoritative MSA shapefile from the Census Bureau.

    Data Clean-Up

    Most desktop GIS software can perform any of the following; To join the shapefile with the csv, I had to do quite a bit of clean-up on the MSA Names within the spreadsheets, so they matched up. Once that happened, I was able to join them up to the shapefile. I calculated a rank by population per MSA to compare against the rank supplied with the GDP info. I exported the final shapefile with a web mercator projection and then zipped it up for storage on the repo.

    4. Create An MapBox Map

    Publishing Via TileMill

    With my GDP by MSA shapefile in Tilemill, all it took was a few lines of Carto-CSS to achieve the symbolization I needed for this map.

    #gdbbymsa2012 {line-color:#fff; line-opacity:0.5; [Pop_Rank <= 20]{polygon-fill:#f48d4d;polygon-opacity:0.5;} [Pop_Rank >= 20]{polygon-fill:#000;polygon-opacity:0.1;}}

    The majority of the time I spent in TileMill was configuring the Legend and the Pop-Up (Teaser). Even if you don’t know HTML well, the crash-course documentation MapBox has is great. With those out of the way, I began the upload to my MapBox account. Within TileMill, you can set the title, description, attribution, and most importantly the zoom scales and bounds. For the US, including Alaska and Hawaii, I wanted county level (or so) zoom - which is around zoom level 8. The final export was about 5mb, which is way under the 50mb you get with a free account (Yes!)

    Creating A MapBox Project

    Log-in to you MapBox account online, and the export from TileMill should appear in the data section. Select the desired export and choose Create Project. From here you can set up the final elements of your web-map. Under the project tab, you can set the title and description, and you can even set HTML tags in here. On the style tab, choose the basemap style, and you literally have limitless options for coloring the basemap using the sliders. When you’re done, double check that everything looks good and works, your pop-ups, legend, etc.

    5. Contribute To This Repo

    To add a new map to this repo:

    • Store all files in folder named after the map
    • Must include data source (pdf, csv, etc - preferred) or link to durable source
    • Must include GeoJSON of data (small sets) or zipped shapefile (large sets)
    • Map project file (TileMill, ArcMap, QGis)
    • Link to online map or image of new map
    • Add read me to folder including: map name, general location, website found on, website link, source name, source link
    • Update the main repo MapTracker csv

    And You’re Done!

    You can view my final version via Mapbox — GDP By Metro Statistical Area And Population By Metro Statistical Area

    If there were any parts of this How-To that were unclear, fuzzy, or wrong please comment or holla at me on Twitter @jonahadkins

    Also, please suggest/comment/ask and contribute, definitely contribute to this repo.

     

  4. How To: ArcGIS Online

    Turning Your Amazing-er Map Into An Interactive ArcGIS Online Map

    1. Find A Map

    For this example, I found a map showing peanut growing areas in the US. Per the title, the outlined areas denote where peanuts are grown. Missing from this map are identifying information, such as labels or county boundaries. The source on the map is shown as NOAA Climate .gov. To make this map Amazing-er, I’d like to add another level of information, such as the ability to select growing areas, or see labels on this map.

    2. Find The Source Data

    Google searching US Peanut Growing Areas, led me to a few places, but I ended up at the National Argricultural Statistics Service. Through their webform, Quick Stats, I was able to filter through the data. The filters for this export were:

    Census >Crops >Field Crops >Peanuts >Production >Peanuts-Production, Measured In LB >Total

    The location was filtered by county geographic area, and I chose the most recent time, which was 2007. The result was table within the site, that had download links. You can see the cleaned up CSV in the repository for the peanut map.

    3. Obtain/Create GIS Data

    Now that I have the source data, I need to join it up to some GIS data. The CSV contains county names, but duplicates county names could exist between states, so I’ll need to use ANSI code. This is more or less a unique code for each county. Next, we find an open and authoritative source for US county boundaries. The Census Bureau has maintained it’s TIGER data for years as an authoritative source. Visit:

    Maps & Data > TIGER Prodcuts> Cartographic Boundary Files > Counties
    From there you can chose the resolution of the shapefile and download.

    Data Clean-Up

    Most desktop GIS software can perform any of the following; To join the shapefile with the csv, I had to first concatenate the state and county ansi codes to one field in both the CSV and the shapefile. With the join complete, I selected only the counties that had peanut growing data and exported it to a new shapefile, with a web mercator projection. The resulting data set has County Name and Value (Measured In Lbs. Of Peanuts Produced). Some values had a (D) code, which meant the vlaue “..Withheld to avoid disclosing data for individual operations..” I created a simple color grouping (group) to sort visually by counties with this (D) value. With that data complete, I zipped up the shapefile and also created a GeoJSON file by using the Esri2Open Toolbox

    4. Create An ArcGIS Online Map

    Making A Web Map

    Log in to your AGOL account and create a new map. I used the beta dark grey basemap as a starting point. From the Add button, choose Add Layer From File. You can add a zipped shapefile with up to 1000 features, the peanut shapefile is under that limit. (Yes!) With data now in the map, I can configure the pop-up, change the symbols, etc. Before you get to crazy, do a quick save as, and save your map with the data. For pop-ups, I used County: {County_1} for the title and a custom attribute display ({Value} lbs. Of Peanuts Produced) for the contents. For colors, against the dark basemap, I used transparent red for the disclosure witheld areas (D), and transparent yellow for the counties with values. With that saved, you have a web map in the My Content section of your AGOL account. Now you can share this as is or, with no code, you can also create an application that will extend the look and functionality of your web map using a web application template.

    Making A Web Application

    From your web map view, choose share, and choose Make A Web Application, from here you can choose 16 templates that you can configure with no code at all. I chose the Chrome application. You’ll be able to configure things such as: predefined color schemes, headers, footers, descriptions, and so on. Using the pavement color scheme, I added a descriptive title, and added a subtitle with some HTML references. I omitted everything else except a legend panel to keep it simple.

    Details, Details, Details

    With both the web map and web application you’ll want to populate the item details. When viewing the item details, you can select the EDIT button to expose that function. From here you can include a custom image thumbnail, detailed description, usage, and credits. With your map shared within the ArcGIS Online system, others will have access to you map through searches and such, so the more details and tags the better.

    5. Contribute To This Repo

    To add a new map to this repo:

    • Store all files in folder named after the map
    • Must include data source (pdf, csv, etc - preferred) or link to durable source
    • Must include GeoJSON of data (small sets) or zipped shapefile (large sets)
    • Map project file (TileMill, ArcMap, QGis)
    • Link to online map or image of new map
    • Add read me to folder including: map name, general location, website found on, website link, source name, source link
    • Update the main repo MapTracker csv

    And You’re Done!

    You can view my final version via ArcGIS Online — US Peanut Producing Counties

    If there were any parts of this How-To that were unclear, fuzzy, or wrong please comment or holla at me on Twitter @jonahadkins

    Also, please suggest/comment/ask and contribute, definitely contribute to this repo.

     

  5. Say Hey To  Amazing-Er Maps!

    There’s lots of maps on the internet. The idea behind this project is to improve, to give people a forum to show how they might display the same information. Anyone can contribute under a common set of guidelines:

    • See a map on the internet
    • Find and open the data or source
    • Create and share the new map

    Pretty simple. And because it’s on GitHub, the repository can be an evolving directory of open data and resources. That also means the process can change or improve as needed. 

    What it’s not is a jab at the original map maker. It’s a way for anyone to see a map of economic activity in the US and improve that map based on their knowledge of data visualization, or economic geography, for example. 

    It’s soooo easy to make an interactive map with current technology, and that gives the map viewer all that extra information on a mouse hover. Don’t get me wrong, I still LOVE making paper maps

    I’ve created some examples to explain the idea behind Amazing-Er Maps further. Within the repository you can comment (please comment), suggest (please suggest), ask (please ask), and contribute (please contribute). And if you need help, just ask! 

    It’s also nice to hear what some of my favorite cartographers and map friends are saying about Amazing-er Maps

    Great idea from @jonahadkins: Amazing-Er-Maps, improving “amazing” (bad) maps on the internet instead of complaining https://t.co/7m1dLHgAlG — Andy Woodruff (@awoodruff)

    I love this! Amazing-er maps started by @jonahadkins. https://t.co/RhvIRG8jKm — Gretchen Peterson (@PetersonGIS)

    Attn cartographers: @jonahadkins has created an opportunity to fix the bad! https://t.co/RA2b8bXbdB — Stephanie May (@mizmay)

    Correcting #cartofails head on… Hope it encourages fewer at source too RT @jonahadkins Idea To Improve [bad maps] http://t.co/qAfnNCMRQr — Kenneth Field (@kennethfield)

    Thanks, Jonah (@jonahadkins)

     


  6. This is an updated “How To” originally posted in October 2013 on 'jonah's maps' . It’s also now available has a GitHib Repo!

    Let’s say you’re asked to help with the cartography of a story map, or you want to create some web maps that just stand out. The current offering of basemaps within ArcGIS Online are ‘ok’, some are more of a complete map than others - so it’s hard to control the visual hierarchy of your layers - there’s that weird sandwich layer thing where if you don’t add a second layer of labels for places and such any data you add will cover the labels burned into the basemap. (Some of the basemaps do this for you, some don’t) Basically, it’s like putting the mayo on top of your sandwich. There have been some previous posts on using outside basemaps and changing the predefined basemap colors, which helped me get started, but I wanted to expand on that topic a little more.

    All of these options work off of AGOL’s ability to add a tile layer from the web.

    • Caveat: you can create maps/tiles in arcgis desktop. The tile creation/upload process (for me) was pretty painful compared to tilemill - mostly because I didn’t have access to ‘ArcGIS For Server’ or an organization level ArcGIS Online account.

    TileMill

    Tilemill “is a modern map design studio” that allows you to use gis data to create map tiles, among many other things. It’s also **open source** and Available On GitHub. Using CartoCSS, you can style your data as desired, choose your zoom levels, then upload the tiles to your Mapbox account. (You can also download tiles to use as well). With a free account, you have 50mb of space and up to 3k views per month. I’ve been able to create several US and World styles up to zoom level 5 with tile sizes under 1mb. Just keep in mind your data audience, your cities street light points probably only need a few zoom levels, and don’t need to be seen on a world map. Your tiles are stored as a Mapbox ‘project’ in your account, and the link you need for AGOL is on the project info window, when viewing your tiles.

    image

    MapBox

    Mapbox is a “platform gives developers the power to make maps that embody their product and brand.” With a Mapbox account, you can start a project, choose a basemap style (streets, terrain, satellite), and use interactive color sliders to re-color/style the map as desired. Yes, you can change the color of the basemap! Same as your Tilemill project, the link you need for AGOL is on the project info window. You can see a sample of project in AGOL here.

    • Caveat: To use the satellite layer within a Mapbox project requires a Basic/$5 per month account.

    image

    Stamen

    Another popular creator of map services is Stamen. You are probably most familiar with their watercolor map tiles, but they also have several others that can be consumed in many ways through ArcGIS. Like Mapbox, you can specify subsets of their basemaps when adding a tile layer, which allow you to intelligently layer their maps with your data. For instance the Toner map service they offer is available in six (WOW!!) flavors: standard toner,  hybrid,  labelslinesbackground, and lite.

    One of their really cool projects is MapStack, dubbed the ‘Instagram’ for maps, it allows you to customize layers using ‘photoshop-like’ controls and filters. It’s similar to the way you would edit colors/syles in a Mapbox project.

    image

    image

    image

    I was able to create some truly unique map layers - a dark blue filter over satellite imagery, pink map labels, and yellow streets. You can see some experimenting in ArcGIS Online I did here. Using MapStack is cool but, as read on their page it’s still an experiment of sorts , meaning: DO NOT DEPEND ON IT TO BE UP AND RUNNING 24/7.

    Adding Tile Layers In ArcGIS Online

    • Login to your ArcGIS Online account and open a new or existing web map. Add > Add Layer from Web > A Tile Layer

    image

    • In another browser tab, you’ll want to have your map of choice open in it’s web map form. Depending on your browser you can use the ‘Inspect Element’ feature or you can right-click ‘Open Image In New Tab’ to get the URL for the tile layer you are using. Here is an example of an image tile URL from the Stamen watercolor service 

              http://d.tile.stamen.com/watercolor/12/654/1583.jpg

    • Use that URL pattern fill out the URL in the tile layer dialogue box.

    image

    Make the following substitutions:

    • Replace the first letter, usually a,b,c, or d with {subDomain)
    • Replace the level, column, and row numbers with {level}/{col}/{row}
    • Don’t forget the .png on the end - most tile layers I came across were png, but double-check to make sure
    • If you want to use your tile layer as the basemap, simply check the box
    • Credits, as read on Stamen’s page, insert this:

    Map tiles by <a href=”http://stamen.com”>Stamen Design</a>, under <a href=”http://creativecommons.org/licenses/by/3.0”>CC BY 3.0</a>. Data by <a href=”http://openstreetmap.org”>OpenStreetMap</a>, under <a href=”http://creativecommons.org/licenses/by-sa/3.0”>CC BY SA</a>.

    Data by <a href=”http://openstreetmap.org”>OpenStreetMap</a>, under <a href=”http://creativecommons.org/licenses/by-sa/3.0”>CC BY SA</a>, Design by Mapbox, Licensed According To Terms Of Service <a href=”http://mapbox.com/tos/”>MapBox Terms Of Service</a>

    • For an imagery layer, add this:

    Imagery by Digital Globe, Mapbox, Licensed According To Terms Of Service <a href=”http://mapbox.com/tos/”>MapBox Terms Of Service</a>

    • Under subdomains, you will insert the a,b,c,d you replaced above.
    • Use the ‘Set Tile Coverage’ if required for your project.
    • Finally, Add Layer

    The same should work for most ‘open’ tile layer services like:

    Just make sure you check the usage and attribution before heavy-use.

    Feel free to give me a shout on Twitter @jonahadkins​ for any comments or questions. And please fork to add any missing info or lessons learned.

     

  7. Also Had 4 Pages In The New 2014 Edition Of Mapping The Nation!

     

  8. Totally Had 8 Maps In The Esri #fedgis Map Gallery!

     

  9. Had A Map In The Esri #fedgis Plenary!

     

  10. Weekend Update

    For Your Not So Serious Stories And Maps*
    Inspired By Saturday Night Live’s Weekend Update Segment

    Includes:

    • Sample Images
    • Conus/Europe GeoJson
    • World GeoJson
    • Tilemill Carto-CSS Style Sheets
    • Esri MXD
    • Esri Shapefiles

    The Conus/Europe Files Were Drawn By Hand And Include Color And State Name Attributes. The World File Started From The Natural Earth Admin-0, Includes Mostly-Only Rank 0 Countries And Was Then Generalized Down To Accommodate For File Size. It Also Includes Color And Country Name Attributes.

    Finally, I Used The Color Palette From This Photo

    For Demo Purposes, I Gathered Some Location Enabled Jokes From nbcsnl And Created:

    Get It For Free On GitHub

    For Questions Or Comments:
    Twitter @jonahadkins Or Tumblr jonahsmaps

    *Usefulness Yet To Be Determined

     
Fork me on GitHub