The explanation lies in how Table constructs the array. The definition in the Help browser says
Table[expr,{i,Subscript[i, min],Subscript[i, max]},{j,Subscript[j, \
min],Subscript[j, max]},=85] gives a nested list. The list associated with i is \
outermost.
This is, I agree, contrary to what happens with a double integral, where the inner integral goes first. And, of course, it is not consistent with the way Plot3D works.
-Tomas
> From:
koo...@sfu.ca
> Subject: Axes in Plot3D and ListPlot3D
> To:
math...@smc.vnet.net
> Date: Mon, 17 Jun 2013 06:25:11 -0400
>
> Plot3D[Sin[x + y^2],{x,-3,3},{y,-3,3},AxesLabel->{"x","y","z"}]
>
> gives a plot that I thought I could duplicate by creating a table
>
> z = Table[Sin[x + y^2],{x,-3,3,1/4},{y,-3,3,1/4}];
>
> and then using ListPlot3D:
>
> ListPlot3D[z,AxesLabel->{"x","y","z"},MeshRange->{{-3,3},{-3,3}}] .
>
> That gives a different view of the same surface, with the wrong labels
> on the axes. To duplicate the Plot3D result I must transpose the array:
>
> ListPlot3D[Transpose@z,AxesLabel->{"x","y","z"},MeshRange->{{-3,3},{-3,3}}]