subplot
quadrille la figure ou frame courante et fixe le repère graphique actif sur la case choisie
Séquence d'appel
subplot(m,n,p) subplot(mnp)
Paramètres
- m, n, p
- entiers > 0 : (m,n) = nombres de rangées et de colonnes du quadrillage virtuel. p = n° de la case ciblée.
- mnp
- un entier avec
mnp
comme notation décimale.
Description
subplot(m,n,p) ou subplot(mnp)
quadrille la fenêtre graphique ou la zone uicontrol("style","frame")
courante en un damier virtuel de m × n cases, et sélectionne la p-ième case
comme zone de dessin active.
Les cases du quadrillage sont numérotées par ordre croissant le long de chaque rangée,
puis selon les rangées suivantes vers le bas. Ainsi, la dernière case de la 1ère rangée
a le n° n
. La case (i,j) sur la rangée n°i et la colonne n°j
a le numéro (i-1)*n+j
.
Lorsque la zone sélectionnée correspond exactement à celle d'un repère graphique existant,
subplot(…)
fixe celui-ci comme repère actif.
Sinon, subplot(…)
crée un repère graphique vide couvrant la case
sélectionnée, prêt à recevoir les graphiques à venir.
Exemples
Placements plus complexes, mais toujours quadrillables :
clf subplot(1,2,2) Matplot1() xtitle("Matplot1() example","","") subplot(2,2,1) histplot delete(findobj("type","Legend")) subplot(2,2,3) title("Smaller plots:", "fontsize",3) subplot(2,4,5) polarplot() subplot(2,4,6) param3d() xtitle("","","","")
Utilisation sur des uicontrol frames :
x = -4:0.05:4; f = figure(... "default_axes","off", ... "toolbar","none", ... "name","subplot in frames", ... "backgroundColor",[1 1 1]*0.97); // Frame #1 b = createBorder("titled", "Frame #1"); uicontrol(f, ... "style", "frame", ... "units","normalized", ... "border", b, ... "position", [0.03 0.83 0.94 0.15]); // Frame #2 b(2) = "Frame #2"; fr2 = uicontrol(f, ... "style", "frame", ... "units","normalized", ... "border", b, ... "position", [0.03 0.03 0.60 0.8]); a2 = newaxes(fr2); subplot(1,2,1) plot(x, tanh(x)), title("tanh") subplot(2,2,2) plot(x, sinh(x)), title("sinh") // Frame #3 b(2) = "Frame #3"; fr3 = uicontrol(f, ... "style", "frame", ... "units","normalized", ... "border", b, ... "position", [0.65 0.03 0.32 0.8]); a3 = newaxes(fr3); subplot(2,1,1) plot(2*x, sinc(2*x)), title("sinc") subplot(2,1,2) plot(2*x, sin(2*x)), title("sin") // Back to Frame #2 sca(a2); subplot(2,2,4) plot(x, cosh(x)), title("cosh")
--> gcf().children ans = 3 by 1 matrix of handles: ========================= uicontrol uicontrol uicontrol --> gcf().children(1).children ans = 2 by 1 matrix of handles: ========================= Axes Axes --> gcf().children(2).children ans = 3 by 1 matrix of handles: ========================= Axes Axes Axes --> gcf().children(3).children ans = []
Voir aussi
- xsetech — sélectionne la sous-fenêtre d'une fenêtre graphique pour les dessins
- newaxes — Creates a new Axes entity
- axes_properties — description of the axes entity properties
Historique
Version | Description |
2024.0 | subplot(…) peut être utilisé sur des composants uicontrol
de style frame. |
Report an issue | ||
<< sda | axes_operations | unzoom >> |