Contour with discrete (x,y) and continuous z
1 次查看(过去 30 天)
显示 更早的评论
I have a 3D data in which the x and y are piece-wise constant and z is constant in the interval of x and y. I would like to plot them with Matlab contourf function. The problem is that for an interval x,y the value z is interpolated. For example for x between x1 and x2 and y between y1 and y2, the value of z is k. Currently contourf in Matlab plots the interpolation of z around the region of x1,x2 and y1,y2. How can I keep the values of z is set constant in region between x1 and x2 and y1 and y2?
Thank you in advance.
Zul
0 个评论
采纳的回答
Image Analyst
2011-7-16
That is 2D data. You have a matrix that has a value for two independent dimensions, x and y. That is 2D data. It can be represented as a image. You can increase the resolution with imresize (to get "in between" values of x and y) and the 'nearest' option if you want it to have a blocky stair step appearance. Then you can display it with imshow(), or with surf if you want a surface kind of appearance. I (and some others) call something like surf a 2.5D representation since it's not really 3D data (like a CT or MRI image where you have 3 dimensions or indexes into an array) but rather a 3D representation of 2D data.
更多回答(2 个)
Fangjun Jiang
2011-7-16
I am not sure if I fully understand your need. Does the following options for contourf() fit you need?
[x,y,z]=peaks(10);
figure(1);contourf(x,y,z);
figure(2);contourf(x,y,z,10);
figure(3);contourf(x,y,z,z);
Or do you want to achieve the same effect as below but want to apply to 3D?
figure(4);plot(1:50);
figure(5);stairs(1:50);
2 个评论
Fangjun Jiang
2011-7-16
Please provide an example with small number of data. I don't think contourf() is the right function to look at at the first place.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Lighting, Transparency, and Shading 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!