В этом примере показано, как протестировать на hold
утвердите и ответьте соответственно в пользовательских функциях построения графика.
Функции построения графика обычно изменяют различные параметры осей, чтобы хранить различные данные. myPlot3D
функция:
Использует 2D или 3-D представление в зависимости от входных данных.
Уважает текущий hold
состояние, чтобы быть сопоставимым с поведением функций построения графика MATLAB®.
function myPlot3D(x,y,z) % Call newplot to get the axes handle cax = newplot; % Save current hold state hold_state = ishold; % Call plotting commands to % produce custom graph if nargin == 2 line(x,y); % Change view only if hold is off if ~hold_state view(cax,2) end elseif nargin == 3 line(x,y,z); % Change view only if hold is off if ~hold_state view(cax,3) end end grid on end
Например, первый вызов myPlot3D
создает 3-D график. Второй вызов myPlot3D
добавляют 2D данные к 3-D представлению потому что hold
on
.
[x,y,z] = peaks(20);
myPlot3D(x,y,z)
hold on
myPlot3D(x,y)