Using Open Data to Map Vancouver’s Trees

This week, in preparation for the International Open Data Hackathon on Saturday, the Vancouver Parks Board shared one neighborhood of its tree inventory database (that I’ve uploaded to Buzzdata) so that we could at least see how it might be leveraged by citizens.

What’s interesting is how valuable this data is already (and why it should be open). As it stands this data could be used by urban landscape students and architects, environmentalists, and of course academics and scientists. I could imagine this data would even be useful for analyzing something as obtuse as the impact of the tree’s Albedo effect on the city’s climate. Of course, locked away in the city’s data warehouse, none of those uses are possible.

However, as I outlined in this blog post, having lat/long data would open up some really fun possibilities that could promote civic engagement. People could adopt trees, care for them, water them, be able to report problems about a specific tree to city hall. But to do all this we need to take the city’s data and make it better – specifically, identify the latitude and longitude of each tree. In addition to helping citizens it might make the inventory more use to the city (if they chose to use it) as well as help out the other stakeholders I outlined above.

So here’s what I’ve scoped out would be ideal to do.


Create an app that would allow citizens to identify the latitude and longitude of trees that are in the inventory.

Data Background

A few things about the city’s tree inventory data. While they don’t have an actual long/lat for each individual tree, they do register trees by city address. (Again, you can look at the data yourself here.) But this means that we can narrow the number of trees down based on proximity to the user.


So here is what I think we need to be able to do.

  1. Convert the addresses in the inventory into a format that can be located within Google Maps
  2. Just show the trees attached to addresses that are either near the user (on a mobile app), or near addresses that are currently visible within Google Maps (on a desktop app).
  3. Enable the user to add a lat/long to a specific tree’s identification number.

Awesome local superstar coder/punk rock star Duane Nickull whipped together a web app that would allow one to map lat/longs. So based on that, I could imagine at desktop app that allows you to map trees remotely. This obviously would not work for many trees, but it would work for a large number.


You’ll notice in the right-hand corner, I’ve created an illustrative list of trees to choose from. Obviously, given the cross-section of the city we are looking at, it would be much longer, but if you were zoomed in all the way I could imagine it was no longer than 5-20.

I’ve also taken the city’s data and parsed it in a way that I think makes it easier for users to understand.


This isn’t mind-blowing stuff, but helpful. I mean who knew that dbh (diameter at breast height) was an actual technical term when measuring tree diameters! I’ve also thrown in some hyperlinks (it would be nice to have images people can reference) so users can learn about the species and ideally, even see a photo to compare against.


So, in short, you can choose a tree, locate it in Google Maps and assign a lat/long to it. In Google Maps where you can zoom even closer than ESRI, you could really pick out individual trees.

In addition to a desktop web app, I could imagine something similar for the iPhone where it locates you using the GPS, identifies what trees are likely around you, and gives you a list such as the one on the right hand side of the screenshot above, the user then picks a tree from the list that they think they’ve identified, stands next to the tree and then presses a button in the app that assigns the lat/long of where they are standing to that tree.

9 thoughts on “Using Open Data to Map Vancouver’s Trees

  1. Robert

    I am currently working on the WordPress Plugin “Leaflet Maps Marker” ( which allows you to set markers and layers on show them through OpenStreetMap or any other WMTS-basemap to your site visitors – I think it might be a tool which could also work for your project. Only disadvantage right now: I still need about 2 more weeks to finish & release it. If someone is interested in testing the plugin, just send a reply to @MapsMarker or email to

  2. Duane Nickull

    @09e23ced3c9c7e48877bed8ecb7446c1:disqus – that sounds cool. coded up the one David points at in about an hour using ESRI Maps but we found the stock resolutions is not high enough.  I think with the right API key it can go much higher.
    Adding a graphics layer would be important but the item I am thinking about is the mutability of the data itself.  If an application were launched allowing users to geo-tag trees, how would the native data persistence be tracked so the same tree metadata is not linked to more than one real tree?   Any ideas at this point would be good.

  3. Andrew Thompson

    David et al,

    You may want to check out OpenTreeMap, developed here in the states by Azavea under a USDA grant and released as open source under the GPL. It does the lat/long mapping you talk about, as well as calculation of environmental benefits (CO2, etc) and tree species identification. It’s already supporting and similar projects in San Francisco and Sacramento.
    code at:

  4. Aschwabe

    We are starting down this road as well and currently only have a “significant tree” library. However, there are great resources that could be used for species ID, photos, etc. We have links from ours to the Virginia Tech site (here’s Gingko: because it covers almost all of our species. But it also has links to USDA databases and other landowner sites. Someone just needs to put it all together.

  5. 22nd Century Music

    David,   Uberity has finished adding it’s geocoding modules to the graph DB server we are building out.  We can now suck in JSON and probably do the entire tree set in 45 minutes (once we code up the ingester classes).  If adding lat/lons to this project is still required, please drop me an email at duane at uberity dot com.  Duane

  6. Anonymous

    After the open data hack on Sat, I spent some hours on Sunday geocoding the trees myself.  I need to do a bit more QA, but it was pretty painless.  Happy to make that available. (it won’t work well unless it geo-locates you correctly – also the ‘map’ part is still totally busted)

  7. Travis Kennedy

    Hi folks, I’m a forester with the City of Edmonton. We released our tree dataset a few weeks back. We are using Socrata to publish the data. We have a database view and a map view… Of course the attributes can also be exported and the map can be embedded: I totally hear the importance of the Geo-referenced attributes. I’m sure the Van Foresters have the Long / Lat tucked away in their dataset somewhere. I’ll see if I can get a hold of one of them. Easiest would be for them to add those attributes for you guys so you can focus on the “App” at hand.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s