Thanks a lot! My mistake was that I did not understand that I needed to apply some function to the groupby data file, for example .size() , to work with it ...
hdf = aggdf.groupby(['a','b']).size() hdf
gives me
ab 1 -2.0 1 -1.9 1 -1.8 1 -1.7 2 -1.6 5 -1.5 10 -1.4 9 -1.3 21 -1.2 34 -1.1 67 -1.0 65 -0.9 94 -0.8 180 -0.7 242 -0.6 239 ... 187 0.4 22 0.5 10 188 -0.6 2 -0.5 2 -0.4 1 -0.3 2 -0.2 5 -0.1 10 -0.0 18 0.1 19 0.2 20 0.3 13 0.4 7 0.5 5 0.6 1 Length: 8844, dtype: int64
With this and with your help CT Zhu, I could do
hdfreset = hdf.reset_index() hdfreset.columns = ['a', 'b', 'occurrence'] hdfpivot=hdfreset.pivot('a', 'b')
and it finally gave me the right values
X=hdfpivot.columns.levels[1].values Y=hdfpivot.index.values Z=hdfpivot.values Xi,Yi = np.meshgrid(X, Y) plt.contourf(Yi, Xi, Z, alpha=0.7, cmap=plt.cm.jet);
which leads to this beautiful outline:

source share