exponenta event banner

plotyy

(не рекомендуется) Создание графика с двумя осями y

plotyy не рекомендуется. Использовать yyaxis вместо этого. Дополнительные сведения см. в разделе Вопросы совместимости.

Синтаксис

plotyy(X1,Y1,X2,Y2)
plotyy(X1,Y1,X2,Y2,function)
plotyy(X1,Y1,X2,Y2,'function1','function2')
plotyy(AX1,___)
[AX,H1,H2] = plotyy(___)

Описание

plotyy(X1,Y1,X2,Y2) сюжеты Y1 против X1 с маркировкой оси Y слева и графиками Y2 против X2 с маркировкой оси Y справа.

plotyy(X1,Y1,X2,Y2,function) использует указанную функцию печати для создания графика.

function может быть либо дескриптором функции, либо указывающим вектор символа plot, semilogx, semilogy, loglog, stemили любую функцию MATLAB ®, которая принимает синтаксис

h = function(x,y)

Например,

plotyy(x1,y1,x2,y2,@loglog) % function handle
plotyy(x1,y1,x2,y2,'loglog') % character vector

Дескрипторы функций позволяют получить доступ к определенным пользователем локальным функциям и могут предоставить другие преимущества. Дополнительные сведения об использовании дескрипторов функций см. в разделе Создание дескриптора функции.

plotyy(X1,Y1,X2,Y2,'function1','function2') использование function1(X1,Y1) для построения графика данных для левой оси и function2(X2,Y2) для построения графика данных для правой оси.

plotyy(AX1,___) строит график данных с использованием осей, указанных AX1 для первого набора данных вместо использования текущих осей. Определить AX1 как объект с одной осью или вектор объектов с двумя осями, возвращенный предыдущим вызовом plotyy. Если задан вектор, то plotyy использует объект первых осей в векторе. Используйте эту опцию с любой из комбинаций входных аргументов в предыдущих синтаксисах.

[AX,H1,H2] = plotyy(___) возвращает маркеры перемещения двух осей, созданных в AX и дескрипторы графических объектов из каждого графика в H1 и H2. AX(1) - левая ось и AX(2) - правые оси.

Примеры

свернуть все

Постройте график двух наборов данных на одном графике, используя две оси Y.

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);

figure % new figure
plotyy(x,y1,x,y2)

Figure contains 2 axes. Axes 1 contains an object of type line. Axes 2 contains an object of type line.

Постройте график с двумя осями Y для двух наборов данных. Добавьте заголовок и метки оси.

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);

figure % new figure
[hAx,hLine1,hLine2] = plotyy(x,y1,x,y2);

title('Multiple Decay Rates')
xlabel('Time (\musec)')

ylabel(hAx(1),'Slow Decay') % left y-axis 
ylabel(hAx(2),'Fast Decay') % right y-axis

Figure contains 2 axes. Axes 1 with title Multiple Decay Rates contains an object of type line. Axes 2 contains an object of type line.

Постройте график с двумя осями Y для двух наборов данных. Измените стили линий. Начиная с R2014b, для задания свойств можно использовать точечную нотацию. Если вы используете более раннюю версию, используйте set вместо этого функция.

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);

[hAx,hLine1,hLine2] = plotyy(x,y1,x,y2);
hLine1.LineStyle = '--';
hLine2.LineStyle = ':';

Figure contains 2 axes. Axes 1 contains an object of type line. Axes 2 contains an object of type line.

Постройте график с двумя осями Y для двух наборов данных. Используйте линейный график для данных, связанных с левыми осями Y. Используйте график стержня для данных, связанных с правыми осями Y.

x = 0:0.1:10;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);

figure 
plotyy(x,y1,x,y2,'plot','stem')

Figure contains 2 axes. Axes 1 contains an object of type line. Axes 2 contains an object of type stem.

Постройте график с двумя осями Y для трех наборов данных. Постройте график одного набора данных, связанных с левой осью Y. Постройте график двух наборов данных, связанных с правой осью y, используя матрицы из двух столбцов.

x = linspace(0,10);
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
y3 = 0.2*exp(-0.5*x).*sin(10*x);

figure
[hAx,hLine1,hLine2] = plotyy(x,y1,[x',x'],[y2',y3']);

Figure contains 2 axes. Axes 1 contains an object of type line. Axes 2 contains 2 objects of type line.

Вопросы совместимости

развернуть все

Не рекомендуется начинать с R2016a

Расширенные возможности

Представлен до R2006a