IronViz – A Local Safari

The IronViz feeder contest sure brings the heat.  The last one where I participated quite literally melted a hard drive.  This year, the burn was data.  Maybe I was too locked in, but I wasn’t curious about any one animal in particular.  I wanted to instead look at an ecosystem and potentially explore the ramifications of climate change.  No dice.  I tried trees in New York City – after all, it’s the concrete jungle.  After finding their census form varied too widely from decade to decade and what remained consistent wasn’t much and it was Wednesday, I gave up.  I briefly explored how coffee is likely to go extinct in 100 years, but after all these data-related disappointments, I didn’t want to add facts about a caffeine buzzkill to the mix.  At this point, I was well over 20 hours in data hunting and research, with only a few bar charts to show for it.  Giving up freed my mind to explore other things, like sleeping.

And that’s when it came to me.  We have a safari right here.  In Columbus, Ohio.  Jack Hanna is a bit of a legend in Columbus.  In 1978, he joined our zoo, which was nothing of what it is today.  Besides ice cream, it’s one of our largest claims to fame.  Navigating the zoo is something else.  It’s 580 acres and is a safari unto itself.  Complete with entertainment, a waterpark, and even a golf course, it is truly its own.

So, instead of sleeping, I decided to map out my safari.

The Zoo website is actually fairly robust.  What I needed was mobile.  Sure, you get a paper map and can download an app, but I wanted to be able to track the exhibits visits and log when animals weren’t available.  If you’ve ever been to the Zoo with a child, you know why.  Proof is important if you ever want to see anything different.

I hit my favorite, most trusted dashboard on mobile – Kelly Martin’s phone dimensions – you need a good sizing chart when you make things this complicated.  I favored Samsung, because that’s what I have.

To track, I looked no farther than Josh Tapley’s magic color finder.  A few things to note here (see Josh’s blog for proper tutorial):

  1. Build the form.  When you get the the part about filling in stuff, you’re doing that to get the fields.  So, you’ll replace ‘123’ with the ID in Tableau.  Don’t overanalyze this.
  2. Change the first part of the link!!!!  Josh has it bolded, but that didn’t prevent toddlers like me from overlooking it.  The key is ‘formResponse’ vs ‘viewForm’.  Don’t ask how much time I lost to that, AKA RTFM.  Maybe, I can get him to make it red, shiny, or flashing.  Look for the bold.

I started out manually collecting the data and trying to use web scrapers to get it.  I was happy to sort out the ParseHub to get the URLs.  So, I outsourced some of the manual download work of images to people in my house (aren’t you glad you don’t live here?) and got my collection of images.  Just like with Jeni’s, image matching was a massive chore.  After finding Apple’s magnifier and some more searching, I found this gem: Jewel’s guide to making the Pokeman viz, with 800 character matchup.  I should’ve known there was an easier solution!  Just name things with the appropriately leading ’00’s.

I also needed a map.  The Zoo map had too much on it to be usable on a phone.  Sure, it was cute, but would require more time than I have to clean up and would display poorly on a screen.  Shapes that broke down would offer the easiest way to explore.  I don’t have GIS software and my proficiency in Alteryx is still quite limited.  So, I hit Google Earth and made my shapes there.  I got the regions done, and begged the ever-delightful Brian Vinson to help with the pins.  Not only did he create the pins for all 43 exhibits, he cleaned up my very ragged edges on my regions.  It pays to have wonderful coworkers.  If you see Brian at Conference this year, buy him breakfast or ice cream.  He’s truly wonderful!

Google Earth saves out 2 styles of files, a KLZ and a KLM.  You want the KLM.

I did manual entry of data from the website on the animals to get started and created a very rough map of some of my goals on paper, mostly arrows and words and some ideas for future development.  I continued to rip apart the website, because it was very obviously using a database.  After too many hours, I found the goldmine: their JSON files, along with all their images.  I pinged another coworker of mine, the Grand Prix of Texas, Matthew Agee.

In the time, I added 2 tools to my workflow:

He made this:

I seriously cannot thank the people that made the data side of this easier enough.  I then took that file and started my design in earnest.  I used the map to provide an idea around colors, and of course, the website and all the images I stole “leveraged”.

How could I not???

It needed a name.  Why not keep it simple?  I found their font and used the preview to make this (because I’m cheap).

I started with the key point for me, the map.

I worked through rough cuts of several ‘screens’ until I got the flow.

When it came time to include some of my Google interactivity, I wanted it to feel a bit like it belonged on a phone.

I also knew I needed users (AKA me) not to hit the button 900 times.  Cheater trick?  I coped the dashboard, added a new ‘back’ sheet and removed what didn’t need clicked.  To prevent action-chaos, I made sure to link to only the ‘back’ sheets.

The final piece?  I needed to track animals and wanted to mirror the achievements that seem(ed) so popular.

So, I made a game out of it.  Gotta collect them all, right?

Since I was busting my hump through this (having started net-new on Wednesday), my data was absolute chaos.  

I also had very sparse data on the Google sheet, which for my application, really hampered me.  I merged my 3 sets, down to 2, duplicating my core data file with spatial and Google in the hopes I could get my Google to refresh.  No dice.  It looks like it only refreshes one, non-joined source (pending confirmation – I could be wrong), regardless of if you join in the same Google sheet.

Fine, plan G at this point, I’ll add to the form what I need, clean up the historical stuff and go from there.  To avoid a massive data overhaul and blending, I copied the source, deleted what I needed to, and added that to Google.

To avoid the risk of too much data shift between now and judging, I added a home screen with a name feature.

Lastly, I did a monster check on actions.

Now, to plan a trip to the zoo!


The short guide:

  1. Google forms/sheets
  2. Google Earth for spatial
  3. Determination to find icons/data
  4. Web scraping or some amazing coworkers/family members who don’t mind helping create data or download images
  5. Music – Santana & Rag N Bone Man, in particular for this one
  6. Happy dashboards
  7. Hope that my data plan doesn’t go over at the zoo.  At least we’ll catch them all!

Jack Hanna put the Columbus Zoo on the map.  Safari Guide puts it in your pocket.

2 Comments

  • June 25, 2017 7:15 am

    Ok. I’m sitting in an air conditioned car, early on a Sun morning reading this article outside of an Einstein Bagels. I don’t know if the chills are from the cold air or from the article, but I believe it’s the article that has my skin doing its dance. This tends to happen to me when I see brilliant work in Tableau. I call it Sensory Overload (https://3danim8.wordpress.com/2016/11/17/sensory-overload-via-tableau/). I find it amazing that people have this much creativity that can be expressed so wonderfully in Tableau.

    Congrats to you Bridget on such a nice example. I have a feeling people will be studying your methods from this application for quite some time.

    Ken

    • Bridget Cogley
      June 25, 2017 7:22 am

      Thank you so much for your kind words and ongoing support since I’ve kicked this blog off. It really means a lot. Methods may be a strong word, it was more like vizzing madness with a lot of testing. Thank you again!