I'm having a debate with a colleague of mine over whether generated heat maps are quantitative or qualitative in nature.

The underlying data source is GPS points. The GPS devices that we use are rigged to save power based on speed so they do not produce a uniform sampling rate.

In my mind generating heat maps for these data over say 2 weeks is a quantitative representation of space use. My argument being GPS points cluster around the areas of space most used. So to be able to say over 2 weeks this area see’s 50,000 points vs another's 20,000 points I view as a quantitative representation of area use.

My colleague's view is that the heat maps are qualitative because the sampling rate isn't steady. Some GPS devices are napping for 4 hrs, others less so, so have no idea how many points are missing from your counts for a true quantitative display.


2 Answers 2


Quantitative vs. qualitative is a characteristic of the data. A heatmap is always a visualization of quantitative data (a count of events or entities). Your friend's objection that this visualization is "qualitative" is perhaps motivated by his recognition that the underlying data are inconsistently sampled, and that therefore the "data quality" is poor, and the final visualization may be divorced from the data that I think you actually want to represent.

Qualitative and quantitative have specific meanings in data analysis (and by extension, geospatial analysis) that are related to the "levels of measurement". This is covered in many introductory GIS textbooks, but an example would be Thematic Cartography and Geovisualization, 3e by Slocum, et al. On pages 79-81, Slocum explains the levels of measurement, and says that qualitative data are associated with nominal (AKA categorical data). This includes categories such as political party affiliation, land cover, or things like ZIP Codes that look like numbers but are actually names. Quantitative data are data in the ordinal, interval, or ratio scales of measurement, which respectively refers to things you can rank (like preferences), add/subtract (like temperatures), or multiply/divide (like population counts).

A heatmap is created from points representing individual events, such as disease cases, or counts of events or entities, such as animals counted at sample sites in an ecological study. All events within a given radius of each pixel are counted (usually weighted by some distance decay function) and divided by the area, so that each pixel in the heatmap represents a density of events at that point in space.

The thing your friend feels uncomfortable about is that it's unclear what your final heatmap is a density of. I think what you want is a density per unit time of persons along travel routes. But what you have is a density of GPS waypoints taken at inconsistent intervals along tracks. The heatmap will be a map of quantitative values, but the values will be only loosely related to the values I think you want to map.

Another issue with the heatmap as a visualization of route data is that if the people are travelling along any kind of road network, the heatmap, which is (usually? always?) based on a circular kernel, will suggest that people are equally likely to be travelling to the sides of the road or track as along it, which is of course unlikely.

A similar GIS.SE question, along with suggestions of visualizations that you might be interested in (and are arguably better than heatmaps for this purpose) is How to create a polyline-based "heatmap" from GPS tracks? If you agree that those visualizations are what you are looking for but need more information, you might edit this question or consider posting a distinct question.

To reiterate, a heatmap is always a visualization of quantitative data.

  • This is an and-both, not an either-or issue. Qualitative is defined as relating to, measuring, or measured by the quality of something rather than its quantity. All data can be judged both quantitatively and qualitatively. The visualization of a heat map is always dependent on the qualities of the data used. Often the quality of data is of much greater importance than the quantity. If I had only one authentic original of a recognized artist and a large quantity of forgeries of that artist's work, no matter what measures I use, the one authentic original will always be worth more. Apr 29, 2016 at 15:43
  • I've edited my answer to clarify the meanings of qualitative and quantitative as presented in a widely used textbook on thematic cartography. Your statements about the meaning of qualitative and quantitative seem to be coming from some other knowledge domain. If someone ranks paintings based on their "quality", that ranking is quantitative data. If I classify the paintings based on what country the artist is from, the country of origin is nominal (hence qualitative) data. Apr 29, 2016 at 18:13
  • Thanks for clarifying the basis of your concept of qualitative analysis. I think we agree that all data that can be quantified can also be misrepresented by attributing qualities to it that it does not possess, whether out of ignorance or by intention. Understanding what the data actually represents and is able to quantify or not able to quantify plays a critical role in evaluating a heat map or drawing any conclusions from it. Apr 29, 2016 at 19:05

Interesting question. It all depends on what you are measuring as a "use of space". It seems that the time the device is asleep is actually the most consistent and constant use of a single space, if you include sedentary states as a use of space. But it sounds like the device won't measure that. But if you discount sedentary states and define that as not being a use of space then the device is doing what you want.

Cats would be considered to have not used any space during most of the day and night by your device. By comparison with dogs they would generate very little heat. But if sleeping is included as a use of space then cats should generate a much higher and more concentrated heat location than dogs. The results produced by the device could be highly accurate or highly inaccurate depending on what you are actually trying to observe with your measurements.

The device can accomodate both measurements if it has a sequential number to create a GPS track line, and if each point has a time stamp. Add a PRIORID field that subtracts 1 from the sequential number, copy the points, join that field to the sequential number and calculate the difference in time between the joined records as days, hours, minutes or seconds (depending on which is relevant). That value could be accumulated by proximity and generate time based heat (not sure of the steps, but I am sure it is possible).

The accumulated number of points would measure the heat of movement in a location while the accumulated time differences would measure the heat of duration in a location.

Look at my response to this thread for a script I wrote to extract GPX file tracks as polylines that assign Z and M (linear referencing measures) information to the line. The M values are based on elapsed time rather than distance traveled, so you can find the position of the object being tracked at any point in time or the segment of the line traversed between any two points in time within the time span of the track. Using the sequential numbering of the points I was able to create events tables of the segments between each pair of GPS points so that I could show the average elevation, slope and speed for that point pair along the track. The line can also be split anyway you like and you can get the time elapsed of any segment with a Python calculation of: !Shape.LastPoint.M! - !Shape.FirstPoint.M! By making the M values based on time, you can correlate the segment length to the time span of any segment so you could distinguish lines that represent high activity over short distances, high activity over long distances, low activity over short distances and low activity over long distances.

  • so in summary, because there isn’t a constant sampling rate, we can never know whether a gps is somewhere in space but not moving and so the GPS is sleeping and not creating points. We can only make a best guess, based on the amount of points but not a definitively state based on our evidence that this is how much an area is being used. So qual not quant. Fair enough
    – hselbie
    Apr 28, 2016 at 23:37
  • GPS points provide other ways to count them than just quantity of points. You could measure the sedentary states from the differences in GPS time stamps if the points have a sequential number to produce a GPS track. Add a PRIORID field that subtracts 1 from the sequential number, copy the points, join that field to the sequential number and calculate the difference in time between the joined records as days, or minutes or seconds (depending on which is relevant). That value could be accumulated by proximity and generate time based heat (not sure of the steps, but I am sure it is possible). Apr 28, 2016 at 23:47
  • Thanks @richard, I'm already doing that using a hexagonal vector grid and then as you say calculating the difference in time of trips within each gridcell and summing to get total time spent in an area.
    – hselbie
    Apr 29, 2016 at 0:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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