visualization of 3D matrix: how do I swap the y and z axis?
20 次查看(过去 30 天)
显示 更早的评论
The Matlab ordering for 3D matrices are: column (y) - row (x) - page (z).
I am using imagesc() to display slices of seismic data: imagesc( S(:,:,1) ); % first page
My first problem is this: how do I slice in another direction? imagesc( S(:,1,:) ); does not work :-(.
My next problem is that for seismic it is customary to have z axis downwards: column=z, row=x, page=y.
I have solved this by a "hack": when reading in the data from an ascii file I swap the y and z axes. The result is that imagesc( S(:,:,1) ); in reality is displaying the seismic for y=y1.
There must be some better way to do this?
Thanks in advance for any answers!
0 个评论
采纳的回答
更多回答(1 个)
Wayne King
2012-2-29
Hi Andreas, you are using imagesc() to display 3D data??
Are you sure you are not talking about surf() or something other display method? imagesc() does not work on a 3D matrix except for a truecolor image.
If you use surf(), you can reverse the Z-axis direction
k = 5;
n = 2^k-1;
[x,y,z] = sphere(n);
surf(x,y,z); set(gca,'ydir','reverse');
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Geographic Plots 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!