ラインオブジェクトは、実行を行った順に表示されますので、一番最後に実行したものが一番上に表示されます。
また、オブジェクトの表示の順番は、軸オブジェクトのChildrenプロパティ値のベクトルの順番で決まっています。ベクトルの一番目の要素が一番最後に表示された(一番上に表示された)オブジェクトのハンドル番号となっています。
既に表示してあるラインの順番を変更する場合は、軸オブジェクトのChildrenプロパティ値のベクトルの順番を変更し、一番上に表示するオブジェクトのハンドル番号を1番目の要素に入れ替えて頂きます。
下記にchildrenプロパティの順番を変更し、ラインの表示を変更する一例として、青色と赤色のラインが重なって表示されている下図のfigure において、青色のラインを上に表示させます。
なお、上図を表示させたコマンドは下記です。
x = 0:pi/20:2*pi;
y1 = [sin(x(1:20)), sin(x(20))*ones(1,21)];
y2 = sin(x);
figure
plot(x,y1,'b',x,y2,'r','linewidth',3)
xlim([0 2*pi])
次に、青色のラインを上に表示させる処理を記述します。
h = get(gca,'Children');
hg = findobj(h,'type','line','Color','b');
ind = (h == hg);
newh = [h(ind); h(~ind)];
set(gca,'children',newh)
これを実行すると、下図のように変更されます。