Why the increment of plot not working ?

1 visualizzazione (ultimi 30 giorni)
Ramesh Bala
Ramesh Bala il 26 Giu 2019
Commentato: Ramesh Bala il 26 Giu 2019
I don;t know where the error is as instead of 6 figures I get 36 figures as its a 2 for loops ,how to combine these 2 varying for loop results into one.I want to plot both the varying i and S values in 6 figures where the code works well when only i is checked and when I add k it goes to 36 ??
A = [125,25];
S(:,1) = [ 160 195 230 90 55 20];
S(:,2)= [ 25 25 25 25 25 25 ];
for i=[57 81 111 58 81 111]
for k = 1: 1:length(S)
figure('Position',[392,345,441,421]);
surf(Data(:,:,i)); shading interp; view(2); % couldn;t add data as its a big file
hold on
plot(S(k,1),S(k,2),'r.'); % sensor
hold on
plot(A(1),A(2),'k.') % actuator
colormap('summer')
axis square
xlabel('Length (cm)','fontweight','bold');
ylabel('Width (cm)','fontweight','bold');
xlim([0 250])
ylim([0 250])
end
end

Risposta accettata

infinity
infinity il 26 Giu 2019
Hello,
You shoul try to put
figure('Position',[392,345,441,421]);
surf(Data(:,:,i)); shading interp; view(2); % couldn;t add data as its a big file
hold on
outsite the loop of "k"
Check does it work or not.
  7 Commenti
infinity
infinity il 26 Giu 2019
Ok, I get your point. So you don't need to use loop "k" and we could use another variable "count" like in this code
count = 0;
for i=[57 81 111 58 81 111]
figure('Position',[392,345,441,421]);
surf(Data(:,:,i)); shading interp; view(2);
hold on
count = count + 1;
plot(S(count,1),S(count,2),'r.'); % sensor
hold on
plot(A(1),A(2),'k.') % actuator
colormap('summer')
axis square
xlabel('Length (cm)','fontweight','bold');
ylabel('Width (cm)','fontweight','bold');
xlim([0 250])
ylim([0 250])
hold off
end
I hope it may help.
Ramesh Bala
Ramesh Bala il 26 Giu 2019
yeah it works ! thanks :)

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by