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

4 views (last 30 days)
Dear all,
Here is a snippet of my code:
plot_array = zeros(5,1);
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;
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 Comment
Simon Wiesheier
Simon Wiesheier on 22 Jul 2021
I resolved my issue by initializing plot_array as
plot_array =,0);
Is there may a more elegant way to store line objects?

Sign in to comment.

Accepted Answer

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

More Answers (0)

Community Treasure Hunt

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

Start Hunting!