Moved numpy import into a try-except clause.
Reworked RGB calculation to use more numpy.
Can pass ContourPlot.data as a numpy rather than as a list