http://www.sethoscope.net hosts a really neat Python script for heatmap creation.
The script takes data points with latitude and longitude coordinates (list of points or a GPX track log) and plots them on a map so areas where points are dense show brightly.
Nice extras include: GPX tracks can be rendered as line segments instead of disconnected points. You can generate animations using ffmpeg. The heatmaps can be put on top of OpenStreetMap tiles.
The script is released under AGPL making it free to improve and share.