特定のプロット(グラフ)を削除する方法

10本程度の曲線がFigureにプロットされている状態で、ある特定のプロットを数本だけ削除する方法をおしえていただけないでしょうか?
なお、プロットは「plot」「fimplicit」「quiver」が混在している状態です。よろしくお願いいたします。

 Respuesta aceptada

Dyuman Joshi
Dyuman Joshi el 29 de Sept. de 2023

1 voto

Save the handles of each plot then delete accordingly.
%Example
figure
hold on
[X,Y] = meshgrid(0:6,0:6);
U = 0.25*X;
V = 0.5*Y;
q=quiver(X,Y,U,V,0,'b');
p=plot(X(:),Y(:),'k-');
f1=fimplicit(@(x,y) x.^2-y.^2-1, 'r--');
f2=fimplicit(@(x,y) x.^2.*sin(x)-y, 'g:');
hold off
%Check how many plots there are on the current axis
ax=gca;
ax.Children
ans =
4×1 graphics array: ImplicitFunctionLine ImplicitFunctionLine Line Quiver
%Delete the 2nd fimplicit plot
delete(f2)
%Updated axis after deletion
ax.Children
ans =
3×1 graphics array: ImplicitFunctionLine Line Quiver
You can also get the children of the current axis of the figure (i.e. all the plots (and any text), as I have done above) and delete plots accordingly, but that will be tedious.

2 comentarios

高木 範明
高木 範明 el 30 de Sept. de 2023
Thank you for your prompt guidance. I also apologize for the delay in thanking you.
I see, now I understand that I can erase the plot in this way. Really, it was a great help.
早々のご教示をありがとうございます。また、御礼が遅れたことをお詫びいたします。
なるほど、このようにすればプロットを消すことができることを理解しました。本当に、助かりました。
Dyuman Joshi
Dyuman Joshi el 30 de Sept. de 2023
You are welcome! Glad to have helped.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre MATLAB en Centro de ayuda y File Exchange.

Productos

Versión

R2023a

Preguntada:

el 29 de Sept. de 2023

Comentada:

el 30 de Sept. de 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!