I am looking for a program that can plot a heat map with quiver plot (aka. velocity plot) on top of it when given a 2D array as input. Is possible, free, Python/Java/C++/Matlab/R and works with Windows 7 SP1 x64 Ultimate.

Heat map using matplotlib.pyplot.pcolor():

enter image description here

Quiver using matplotlib.pyplot.quiver (demo)_:

enter image description here

I would like to combine those two:

enter image description here

The arrows of the quiver would represent the variation of the values of the heat map.

  • What do you mean with "represent the variation of the values of the heat map"? – Bernhard Aug 3 '14 at 14:26

Gnuplot is my favorite for plotting any kind of 1D or 2D data. It is a tool without graphical user interface, but I think you like it.

set pm3d map
set size ratio -1
unset key
set palette rgbformulae 22,13,10
splot "data.dat" using 1:2:(sqrt($3**2+$4**2)), "" using 1:2:(0):3:4:(0) with vectors linecolor rgb "#000000"


Of course, these are almost default settings, but with a bit of tweaking you can make it a lot nicer, and also export it directly to any kind of

I've also used the Gnuplot-Python interface, which basically works with exactly the same commands, where you can directly stream you python variables to gnuplot.

My experience with gnuplot and gnuplot-py is with various Linux-distributions only, but both claim to be available for Windows as well.

| improve this answer | |

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.