contour map from 3-column matrix?

9 views (last 30 days)
LMS
LMS on 22 Feb 2016
Commented: LMS on 22 Feb 2016
Hi! I am very new to MATLAB and couldn't find an answer on the forums to a basic question: I need to create a contour plot from 20 points, each with x and y coordinates and elevation z. I created a Matrix B, which has 20 lines and 3 columns. Column 1 is the x coordinates, 2 is the y coordinates, and 3 is the elevation. According to "help contour", I should be able to make a contour plot using
contour(B)
However, the plot I get from this is completely nonsensical. If I split up B so that each column is a vector (x, y, and z), and then use
contour(x,y,z)
I get the error message "Z must be at least a 2x2 matrix".
Could someone please explain to me in very simple terms what I'm doing wrong?
Thank you!
  2 Comments
Stephen23
Stephen23 on 22 Feb 2016
Please upload your data (in a mat file or text file): edit your question, click the paperclip, click both Choose file and Attach file buttons.
Stephen23
Stephen23 on 22 Feb 2016
Edited: Stephen23 on 22 Feb 2016
What you uploaded does not really make any sense compared to your description:
"Column 1 is the x coordinates, 2 is the y coordinates, and 3 is the elevation" seems a bit unlikely. For example if the first column really is the X coordinate, then your data is spaced linearly along the X axis, so you have no 2D data and therefore using contour is totally pointless. It is not clear how this data might represent a 3D surface.

Sign in to comment.

Accepted Answer

Mike Garrity
Mike Garrity on 22 Feb 2016
You've got a list of locations and values. Visualizations like contour are showing what happens between the values. To do that, they need more information than just the locations. They also need some sort of connectivity information. The contour functions are designed for a "quad mesh" (sometimes just called a "grid"). There are also techniques which work on triangle meshes.
So, you need to get your locations and values into some sort of mesh before you can use this sort of visualization technique. We discussed some of your options on this thread about color interpolation. The options are pretty similar for contouring algorithms, so it's probably a good place to start.
  1 Comment
LMS
LMS on 22 Feb 2016
Thank you for your helpful and accessible answer. I will try that!

Sign in to comment.

More Answers (0)

Categories

Find more on Contour Plots in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!