In MATLAB, how do I plot irregularly spaced data?

To plot irregularly spaced data in MATLAB, use the TriScatteredInterp command to create a data structure for interpolation.

The example below plots a saddle-shaped surface by interpolating over 100 random data points:

  %Pick random x and y coordinates
  %  and compute z values.
  x = rand(100,1)*10-5;
  y = rand(100,1)*10-5;

  z = x.^2 -y.^2;

  %Construct the interpolant and use to evaluate
  %  zi for values (xi,yi)
  F = TriScatteredInterp(x,y,z);
  ti = -5:.1:5;

  [xi,yi] = meshgrid(ti,ti);
  zi = F(xi,yi);

  %Plot the interpolated surface in black
  plot3(xi,yi,zi,'k');

  %Add the original data points in red
  hold on; plot3(x,y,z,'or'); hold off

If you have questions about using statistical and mathematical software at Indiana University, contact Research Analytics. Research Analytics is located on the IU Bloomington campus at Woodburn Hall 200; staff are available for consultation Monday-Friday 9am-noon and by appointment.

Note:
For details about availability of UITS services during Thanksgiving break, see UITS Thanksgiving break support hours.

This is document afqy in the Knowledge Base.
Last modified on 2015-05-20 00:00:00.

  • Fill out this form to submit your issue to the UITS Support Center.
  • Please note that you must be affiliated with Indiana University to receive support.
  • All fields are required.

Please provide your IU email address. If you currently have a problem receiving email at your IU account, enter an alternate email address.

  • Fill out this form to submit your comment to the IU Knowledge Base.
  • If you are affiliated with Indiana University and need help with a computing problem, please use the I need help with a computing problem section above, or contact your campus Support Center.

Please provide your IU email address. If you currently have a problem receiving email at your IU account, enter an alternate email address.