Showing posts with label WhirlyViz. Show all posts
Showing posts with label WhirlyViz. Show all posts

Friday, April 25, 2014

Bay Area Bike Share - Data Challenge

I've put together an entry for the Bay Area Bike Share Data Challenge.  The challenge involved a fun data set containing individual trips and bike availability data.

It's an iOS app, because that's what I do.  Even better, it's a script in the WhirlyViz app.

Popular Trips

The Entry


My entry to the competition is the app.  More specifically, it's the Bay Area Bike Share Stats visualization within WhirlyViz.

First, go install WhirlyViz.  It's fine, I can wait.



Next, find the "Bay Area Bike Share Stats" entry.


There's instructions in the upper left.  But just go ahead and tap on things.  No one reads the instructions.

The Video


Don't have an iPad or iPhone?  It's cool, I won't tell anyone.  You can just watch the video.



The Technology


The display part here is WhirlyViz, my geospatial data display engine based on the WhirlyGlobe-Maply library.  Since moving to Javascript for the configuration files, I've put together some interesting examples.  The BABS visualization is the most complicated thus far.

I'm really liking how much control I have with the Javascript support.  I can start to tell a story with the data and point out things along the way.  I'm parsing a couple varieties of JSON from different sources, but it's all pretty seamless to the user.

The back end technology is PostgreSQL running on an Amazon ec2 instance with a simple node.js front end.  This is the first time I've bothered to stand up something like that and it was interesting.  It makes me appreciate the commercial services and what they do.

Bonus Visualization


It turns out several cities use the same format for their bike availability feed.  Look for the "City BikeShares" entry in WhirlyViz.





Thursday, April 10, 2014

WhirlyViz: MapLarge Precipitation


I was turned on to MapLarge by a new client and I have to say I like what they do.  
Full disclosure:  I like what most people do.

More blue, more rain.

MapLarge


MapLarge makes a GIS platform to support those web maps all the cool kids are doing.  You feed in a bunch of data, make some queries and it gives you back tiled images.

The blue is food coloring.  2011 was a strange time.

There are a few services that do this sort of thing, I believe.  What I’ve noticed with theirs is that it’s wicked fast.  Not a bad way to distinguish yourself.

WhirlyViz Example


With the new WhirlyViz 1.3 I’ve got Javascript under the hood running things.  This makes it really easy to hook up services like MapLarge.  Their tile service is a tad different from anything else I’ve encountered, but it’s not a problem with custom scripting.

The demo is hooked up to their precipitation database.  You can query average precipitation organized by state, zip code, or county.  At the map level you can see the general trends, and tap to get a specific data value.


The precipitation demo is in the latest WhirlyViz, so scroll on down and take a look.

WhirlyViz: GeoTrellis Transit

With WhirlyViz 1.3 we have a lot more flexibility in how we talk to back end services.  I'm having a blast wiring up all sorts of interesting geospatial engines.  Today's is the GeoTrellis Transit API from Azavea.



You can outrun the zombie outbreak on a bike.


GeoTrellis Transit


You should go check out their web page, but I’ll give you the quick version.  GeoTrellis Transit provides an API for answering questions about a travelshed.  You can use it to figure out how far a commuter could get using standard modes of transportation from point A to a variety of points’ B.

Can't beat rail for getting around.


Presumably you’d use this for urban planning, decision making and such.  Seems useful and it's fun to play with in a wonky sort of way.

WhirlyViz Demo


The GeoTrellis example is right up top in WhirlyViz 1.3.  Feel free to install that and give it a go.  Tap and hold to move the travelshed’s center.



Like all the of the newer examples, the WhirlyViz configuration is controlled by Javascript.  It was fairly simple to talk to the WMS server they provide, even not explicitly using the WMS functionality in WhirlyGlobe-Maply.  Constructing the rest of the parameter string was a cinch.

Monday, April 7, 2014

Maply Vector Maps: Networking

I've been working on tiled vector maps for quite some time.  When we last checked in, I'd described how offline vector maps work in the new toolkit.

If this were Colorado, that would be a pot dispensary.
Well now they work over the network.

Vector Map Demo


The latest WhirlyViz supports vector maps... because of course it does.  Just install that, and select the the Sao Paulo, Brazil example.


And you're off!  That's a small sample of a larger Brazilian database I use for testing.  You can see the whole thing at State Of the Map this weekend if you're so inclined.

Implementation


This update is already checked in to the develop branch on github.  To add your own tiled vector map, all you have to do is something like this.

Adding a remote vector tile db is a multi-stage process.  Rather than making you do that, you just pass in a block to wire up the vector tiles object once it's safely created.  Trust me, it's better this way.

Next Up


I thought this was the big vector map announcement.  Turns out I was wrong.  More on that soon.  I also have a few other announcements in the queue before SOTM-US this weekend.