To simplify your question, you have two set of points, one for ping=1000. Since the count of points is very large, you can't plot them directly by scatter(). I created some sample data by.
The GDAL libraries including the Python API and associated utilities, particularly gdal_grid should work for you. It includes a number of interpolation and averaging methods and options for generating gridded data from scattered points. You should be able to manipulate the grid cell size to get a pleasing resolution.