Do figures have to be active to add plots to them?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi Guys, This is the situation, I create 4 fill plots using and return there respective axis handles using:
figure('OuterPosition',[1 scrsz(4)/2 scrsz(3)/2 scrsz(4)/2])
SpecH = myFill(f1,specMat,'Frequency Spectrum');
figure('OuterPosition',[scrsz(3)/2 scrsz(4)/2 scrsz(3)/2 scrsz(4)/2])
AvgH = myFill(f2,bandAVGsMat,'Band Average');
figure('OuterPosition',[1 scrsz(4)/36 scrsz(3)/2 scrsz(4)/2])
VarH = myFill(f2,bandVarsMat,'Band Variance');
figure('OuterPosition',[scrsz(3)/2 scrsz(4)/36 scrsz(3)/2 scrsz(4)/2])
PwrH = myFill(f2,pwr2ResMat,'Band Power ratio to the fundermental');
I then wish to put a new line on each fill plot as I pass through a loop. I do this using:
hold on
plot(SpecH,f1,dataStoreT(i,:),'g','LineWidth',2)
plot(AvgH,f2,bandAVGsT,'g','LineWidth',2)
plot(VarH,f2,bandVarsT,'g','LineWidth',2)
plot(PwrH,f2,pwr2ResT,'g','LineWidth',2)
hold off
When I run this; one of the plots, the one which is currently active, adds the line no problem. BUT the other three clear the "fill" type plots and just plot the line. I have noticed that this clearing of the old lines only happens to the plots which are not active (and also the active plot seems to always be the second to last one plotted?!..)
So my question is: How do I activate a plot before adding the line and is this necessary or is there some workaround?
Thanks in advance.
Kind Regards,
Tim.
0 comentarios
Respuesta aceptada
Walter Roberson
el 25 de Sept. de 2012
The difficulty you are encountering is that "hold on" applies to the current axes, not to all axes.
4 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Annotations en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!