È possibile inserire il codice che si utilizza per generare la cifra base in una funzione, quindi richiamarla più volte per creare più copie della cifra di base. Si vorrà restituire lo graphics handles per quelle figure (e probabilmente i loro assi) come uscite dalla funzione al fine di modificarle ciascuna con un diverso insieme di dati tracciati. Ad esempio, questa funzione rende 500-by-500 figura pixel posizionato 100 pixel sulla sinistra e inferiore dello schermo con uno sfondo rosso e uno assi con un dato insieme di dati di input tracciati su di esso:
function [hFigure,hAxes] = make_my_figure(dataX,dataY)
hFigure = figure('Color','r','Position',[100 100 500 500]); %# Make figure
hAxes = axes('Parent',hFigure); %# Make axes
plot(hAxes,dataX,dataY); %# Plot the data
hold(hAxes,'on'); %# Subsequent plots won't replace existing data
end
con la funzione di cui sopra salvato a un m-file sul MATLAB path, si possono fare tre copie della figura chiamando make_my_figure
tre volte con lo stesso insieme di dati di input e memorizzare le maniglie torna in variabili distinte:
x = rand(1,100);
y = rand(1,100);
[hFigure1,hAxes1] = make_my_figure(x,y);
[hFigure2,hAxes2] = make_my_figure(x,y);
[hFigure3,hAxes3] = make_my_figure(x,y);
Ed è possibile aggiungere dati agli assi della seconda cifra in questo modo:
plot(hAxes2,rand(1,100),rand(1,100));
+1: ha dimenticato COPYOBJ. – gnovice