How to set line style while using plot in a for loop?
48 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I am trying to plot some data from a structure usign a for loop. I want to set the "linetype" property every iteration. But I don't know how to pass the value of the property to the plot command.
Here is an example of the code:
for j=1:2
subplot(2,1,j)
for i=1:3
plot(sD{i}.t,sD{i}.V(:,j),'linestyle',linS{i}); hold on;
end
end
however, if I create the cell array
lin={'-','--',':'}
plot does not understand it is the value of line style property. I don't understand of it is possible to send a string to the property value. Is there a way?
The other option I explored is using "findall" to get line objects and change their properties, but still I guess I would not be able to do it in a loop.
I cannot "vectorize" the plot because the variables in the structure have different sizes.
Thanks for your help!
0 comentarios
Respuesta aceptada
Daniel Shub
el 13 de Nov. de 2011
With a slight change (changing lin to be linS) it works for me...
linS = {'-','--',':'};
for j=1:2
subplot(2,1,j)
for i=1:3
plot(randn(10, 1),'linestyle',linS{i}); hold on;
end
end
I also replaced what you are plotting with randn. What do you get?
Más respuestas (0)
Ver también
Categorías
Más información sobre Discrete Data Plots 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!