Clear Filters
Clear Filters

Vectorizing Code Yields Different Answer to For-Loop

1 view (last 30 days)
BM
BM on 31 Oct 2017
Commented: BM on 31 Oct 2017
I ended up quickly writing a piece of code that theoretically should plot one value for each plot, giving 10 of them in total. It does do this. What if I wanted to remove the for-loop? I could vectorize the code simply by removing the for-loop, but then this plots a single plot with all the values upon it. Is there a way for me to remove the for-loop, but have my program plot a single value for each of the 10 iterations, yielding 10 plots as before?
cd('~/Documents/MATLAB/plots/test')
for x = 1:1:10;
y = x+2;
plot(x,y,'*')
filename = strcat('x_',num2str(x));
print(gcf,'-painters','-dpdf',strcat(filename,'.pdf'));
end
  3 Comments
BM
BM on 31 Oct 2017
Yes, in fact this test code I wrote mimics what I want to do for a much more complex program. If I kept the for-loop in my other program, I would have 150-200 lines of code between it, some of which already contain for-loops. I am literally trying to experiment with this code to see if there is a simple way of making this run faster and more efficient, so that when I use the same technique on my other program, it should save some time.
BM
BM on 31 Oct 2017
My other program will need to have separate plots for each run, as I vary a specific value. I am interested in how that value changes the result when it varies.

Sign in to comment.

Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!