I have the following dataset that I need to display on the heat map:

[30, 15, 66, 7, 9999, 78, 42, 132]

So if I map the values to the color scale using a linear function I only see the spike while the rest of the values I cannot tell apart because the difference between them is insignificant in the scale of that spike.

I tried a log function but it didn't get a good looking picture either.

I don't care about accurate correspondence between the value and the color intensity.

Is there a way to map the values to the color scale so that the difference between all values was visible? Can I mitigate that spike somehow? I am rather asking about established approaches or algorithms addressing problems like this.

  • $\begingroup$ What language or data visualization tool are you using? $\endgroup$ Mar 27, 2013 at 15:02
  • $\begingroup$ JavaScript and AmMaps controls $\endgroup$ Mar 27, 2013 at 15:09
  • $\begingroup$ It doesn't look like you can control the gradient with ammaps but I haven't used it. You could probably filter your data and then do drill down maps to get an overlay effect. $\endgroup$ Mar 27, 2013 at 15:25

1 Answer 1


There are many different ways of handling outliers, as well as answers to similar questions here already. I would recommend taking a look at

The first deals with this problem in R. Taking the approach of graphing the non-outliers with a heatmap, then overlaying the outliers and annotating the legend to describe that this is what was done.

The second contains links to general solutions and approaches to outliers.


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.