Thinking forward, how would this part of the code cope if `jPointsAreConsecutive=1`? I'm guessing the points would be muddled? I've not seen a file with this set so I don't know how likely it is to come up, I know you said something similar earlier. Would we have to do something like:

    new_values = scipy.interpolate.griddata((lons, lats), values, zip(xx, yy))
    if gribapi.grib_get_long(grib_message, 'jPointsAreConsecutive'):
        new_values = new_values.transpose()
    new_values = new_values.flatten()

I'm having a hard time thinking this one through so I might be wrong. What do you think @bblay?