spectrogram in Matlab has time as the y-axis and frequency as the x-axis. In audio we usually have it the other way around with time as x and frequency as y. There are a number of ways to swap the axes. Matlab's own example in the help documentation uses view(0,90); to rotate the view. (All Matlab plots are actually 3D with an orthographic projection)My choice is to use
'yaxis' for the flag 'freqloc'. Eg.
spectrogram(x, w, 'yaxis');This tells the function to put the frequency on the y-axis. Still, why this isn't the default setting is beyond me.