I would like to show the relationship between two sets of data, over a large period of time; distributed by geography/location.

The data has (latitude, longitude, datavalue1, datavalue2, timestamp).

The data set has to do with ATM data; so it has the following:

  1. The GPS coordinates of the ATM location
  2. The number of withdraws (volume, not value)
  3. The number of deposits (again, its volume)
  4. Date and time of the transaction

I would really like to use a heat map that is animated (a time lapse); but I am not sure how to display two sets of data trending on the same area.

Is there another visualization I can use? The user interface would consist of pausing and resuming the time lapse animation; and not interacting with the data itself.

It is a strict visualization.

The goal is to see (over a range of time) which regions have a large difference between deposits and withdrawals; in order to better schedule replenishment of ATMs.

  • Are you able to share what the datavalues are or a use case? It's so vague, having more information would be helpful in suggesting a solution. Commented Oct 22, 2015 at 21:23
  • @JuliaRezsnyak I added some more data, I hope this helps. Commented Oct 22, 2015 at 21:36
  • Data visualization is like story telling. You need to know what point you're trying to let the users know to determine how you should best illustrate the relationship. E.g. I want people to know people withdraw more money from specific locations and deposits more in others. Then you might consider overlaying the two, using color for one and pattern on the other so you can see it overlap.
    – nightning
    Commented Oct 22, 2015 at 21:45
  • If there's no relationship between the two, then you might want to create a toggle mode to see withdraws over time vs deposits over time. If the difference between the two is the over things you care about... e.g. which ATM needs to be refilled, when. Then shades of color denoting the relative difference would be more effective.
    – nightning
    Commented Oct 22, 2015 at 21:48
  • Can you explain whether the goal is to: 1) Monitor the data as it comes in (dashboard), 2) Conduct visual exploratory analysis of a large dataset to figure out hypothesis about what is happening, or 3) Tell a story with that data, but you already know what you want to tell? Most people confused storytelling with visualization with analysis with visualizations. Those are not the same, and require different tools / approaches. Commented Oct 22, 2015 at 21:54

4 Answers 4


I'm going to assume that only empty machines matters, ATMs that are flushed with cash isn't important. Also the overall regions with empty ATMs are more important than the levels at specific machines. Although I think the concept below can be tweaked to provide both.

enter image description here

The shaded regions indicates areas that's most in need for replenishment. The darker, the more urgent. The dots on the map represents ATM locations. Blue for a "happy" machine, red for a "depleting" machine. You can use additional symbol, color etc to denote various levels on the machine.

In fact something like this may do the trick if your map is more zoomed in.

enter image description here Taken from Zeo's answer for another question.

User can then jog a timeline to see changes across the various regions.


I like Nightning's idea with the map, but for just a comparison of the regions' deposit/withdrawal flow Sankey Diagram would work perfectly.

Here's a mockup: there are two sets of blocks, each block represents a region/area, left set stands for withdrawals and right for deposits. Timeslider allows user to time lapse and see which volumes were critical at what time of the day (week/month).

enter image description here

But if the goal really is about planning time of the replenishing cash machines, then time is a key variable here, and a simple stacked bar chart with time on X axis would work better. The Sankey above doesn't allow a good and precise comparative view of the volume in two and more moments of time at once.


Your two metrics are measured in the same units but otherwise seem unrelated. It might be worth going back and thinking about why user wants to see these two data and what they will do with the answers.

If you considering a heat map your points must be close together. If not you could try a 3d map/chart with columns for the two metrics.
http://vizicities.com/ might be a fun library to look at (though omit the 3d buildings of course)

Otherwise consider:

  • toggling between the metrics
  • a ratio metric (withdrawals vs deposits/withdrawals)
  • unlikely: but you test using colour and intensity: e.g. show bright spots for lots of transactions with a colour to indicate high deposit sites
  • I was thinking of having a visualization where there are two bar charts (vertical) that represent the deposit withdraws; but I am not sure what kind of visualization this is (I mean, what to search in order to see how to implement it). Commented Oct 22, 2015 at 22:14
  • Try geo-located column chart (or bar chart). For example: bl.ocks.org/emeeks/4531633
    – Aidan
    Commented Oct 22, 2015 at 23:08
  • D3.js may be a good tool to prototype your ideas for this.
    – Aidan
    Commented Oct 22, 2015 at 23:09

Seems like you need to pinpoint activity at the micro level in a larger scale. Something like animated dots on a map might work, like this http://tipstrategies.com/geography-of-jobs/ You could also summarize the larger region changes using the background of the map.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.