MATLAB Answers


Contour with discrete (x,y) and continuous z

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.


Sign in to comment.

3 Answers

Answer by Image Analyst
on 16 Jul 2011
 Accepted Answer

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.

  1 Comment

I have not used image processing toolbox. What function is used as a start, to create the image?
Then, I guess I can play with imresize.

Sign in to comment.

Answer by Fangjun Jiang
on 16 Jul 2011

I am not sure if I fully understand your need. Does the following options for contourf() fit you need?
Or do you want to achieve the same effect as below but want to apply to 3D?


Yes, like the second but in 3D and regular grid.
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.

Sign in to comment.

Answer by Zulkifli Hidayat on 16 Jul 2011

It seems that I am not clear enough. I need something like function stairs, but in 3D and the amplitude is in color. I hope it is more clear now.


Sign in to comment.