MATLAB-Plot two sets of data on the same graph with custom increments

  • Context: MATLAB 
  • Thread starter Thread starter Superposed_Cat
  • Start date Start date
  • Tags Tags
    Data Graph Sets
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 4K views
Superposed_Cat
Messages
388
Reaction score
5
Hi, I was trying to plot two sets of data on the same graph and this was my solution but this generates a graph with the x-axis in 0.5 increments where I wanted 1. How do I plot two sets of data on the same graph and customize the increments. Thanks in advance. Also, how would I make MATLAB calculate the area under each curve?
Code:
x = [1 2 3 4 5];

y2 =[84,86,84,81,84,]; 
%72,84];
y=[74,85,89,96,99]; 

plot(x, [y(:) y2(:)])
 
Physics news on Phys.org
In general you plot multiple things in the same figure window by using the "hold on" command. This keeps the current figure open and active for future plot commands (it plots overtop of what's already there). When you need a new figure, just type "hold off" and new plots will be done in a new window.

This page explains how to set the axis limits and tick intervals.
http://www.mathworks.com/help/matlab/creating_plots/setting-axis-parameters.html

Since you have discrete data, use the trapz(x,y) or cumtrapz(x,y) functions to calculate the area under each curve. The difference between the two is that trapz() just gives you the final area, whereas cumtrapz gives you the intermediate values as well.
http://www.mathworks.com/help/matlab/math/integration-of-numeric-data.html
http://www.mathworks.com/help/matlab/ref/trapz.html
http://www.mathworks.com/help/matlab/ref/cumtrapz.html