I think you might find this Stack-Overflow question/answer to be relevant in this case: https://stackoverflow.com/questions/2369492/generate-a-heatmap-in-matplotlib-using-a-scatter-data-set
Briefly, you could convert the area in which eye movement is being tracked to a 2D matrix, then sum the time that the eye has been fixed in each coordinate square. This 2D matrix could then be used as input to plotting using the matplotlib imshow function (https://matplotlib.org/devdocs/api/_as_gen/matplotlib.axes.Axes.imshow.html).
The accumulation of fixations in, for example, a 1000x1000 display grid is relatively sparse. To produce a smooth "heat map" you will probably need to pass the matrix through a low-pass spatial filter. Easy to do in MATLAB.
If you want to make use of the fixation duration data as well it would be worth playing around with making the dot size a function of fixation duration. Many of the generic gaze data packages have a function like this and it makes it quick and easy to view the data (assuming the duration is of importance to your project).