MATLAB: X2 and y2 not plotting as expected

MATLABmultiple axis

Code is following
clear all; close all; clc;
% Arbitrary x's and y's
x1 = [10 20 30 40];
y1 = [1 2 3 4];
x2 = [100 200 300 400];
y2 = [105 95 85 75];
figure
plot(x1,y1,'o', 'MarkerEdgeColor', 'r', 'MarkerFaceColor', 'r')
ax2 = axes('Color','none'); % Create secondary axis
plot(ax2, x2,y2,'o', 'MarkerEdgeColor', 'b', 'MarkerFaceColor', 'b')
% Now set the secondary axis attributes
ax2.Color = 'none'; % Make the chart area transparent
ax2.XAxisLocation = 'top'; % Move the secondary x axis to the top
ax2.YAxisLocation = 'right'; % Move
i get the output
but i am looking for this output
x2 and y2 are not plotting properly.where am i going wrong?

Best Answer

You don't need to manually plot two axes. Use yyaxis (or for older releases that don't have yyaxis, use plotyy) instead.