www.gusucode.com > graphics 案例源码程序 matlab代码 > graphics/CreateChartWithTwoYAxesExample.m
%% Create Chart with Two y-Axes % This example shows how to create a chart with _y_-axes on the left and % right sides using the |yyaxis| function. It also shows how to label each % axis, combine multiple plots, and clear the plots associated with one or % both of the sides. %% Plot Data Against Left y-Axis % Create axes with a _y_-axis on the left and right % sides. The |yyaxis left| command creates the axes and % activates the left side. Subsequent graphics functions, such as |plot|, % target the active side. Plot data against the left _y_-axis. x = linspace(0,25); y1 = sin(x/2); yyaxis left plot(x,y1); %% Plot Data Against Right y-Axis % Activate the right side using |yyaxis right|. Then plot a set of data % against the right _y_-axis. z1 = x.^2/2; yyaxis right plot(x,z1); %% Add Title and Axis Labels % Control which side of the axes is active using the |yyaxis left| % and |yyaxis right| commands. Then, add a title and axis labels. yyaxis left title('Plots with Different y-Scales') xlabel('Values from 0 to 25') ylabel('Left Side') yyaxis right ylabel('Right Side') %% Plot Additional Data Against Each Side % Add two more lines to the left side using the |hold on| command. Add an % errorbar to the right side. The new plots use the same color as the % corresponding _y_-axis and cycle through the line style order. The |hold % on| command affects both the left and right sides. hold on yyaxis left y2 = sin(x/3); plot(x,y2); y3 = sin(x/4); plot(x,y3); yyaxis right load count.dat; m = mean(count,2); e = std(count,1,2); errorbar(m,e) hold off %% Clear One Side of Axes % Clear the data from the right side of the axes by first making it active, % and then using the |cla| command. yyaxis right cla %% Clear Axes and Remove Right y-Axis % Clear the entire axes and remove the right _y_-axis using |cla reset|. cla reset %% % Now when you create a plot, it only has one _y_-axis. For example, % plot three lines against the single y-axis. xx = linspace(0,25); yy1 = sin(x/4); yy2 = sin(x/5); yy3 = sin(x/6); plot(xx,yy1,xx,yy2,xx,yy3) %% Add Second y-Axis to Existing Chart % Add a second _y_-axis to an existing chart using |yyaxis|. The existing % plots and the left _y_-axis do not change colors. The right _y_-axis uses % the next color in the axes color order. New plots added to the axes use % the same color as the corresponding _y_-axis. yyaxis right zz1 = exp(xx/6); zz2 = exp(xx/8); plot(xx,zz1,xx,zz2)