vector of line chart objects returned by plot - problem with modifying markers,...

1 visualización (últimos 30 días)
Dear all,
Here is a snippet of my code:
plot_array = zeros(5,1);
x=0:0.1:1000;
y=x.^3
for p=1:1:5
plot_array(p) = loglog(x,y, /*arbitrary markers and legend which I would like to modify after the loop);
hold on;
end
legend_array(2,1).Marker = '+';
The last line produces the error message: "Unable to perform assignment because dot indexing is not supported for variables of this type".
I tried to reproduce the example from the loglog documention. The only difference to my code is that (i) I have an array, -> legend_array(2,1), and (ii) I plot only one pair of vectors, that is why I omitted something like (legend_array(2,1))(1).Marker = '+' .
Thanks for helping me!
  1 comentario
SA-W
SA-W el 22 de Jul. de 2021
I resolved my issue by initializing plot_array as
plot_array = matlab.graphics.chart.primitive.Line.empty(5,0);
Is there may a more elegant way to store line objects?

Iniciar sesión para comentar.

Respuesta aceptada

darova
darova el 25 de Jul. de 2021
Try this
x = 0:10;
y = sin(x);
h(1) = plot(x,y,'r');
h(2) = line(x,y+.5);
set(h(2),'marker','.')

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by