How to solve the 'Index exceeds number of subplots' error?

48 Ansichten (letzte 30 Tage)
Emrys
Emrys am 23 Jan. 2018
Kommentiert: the cyclist am 14 Sep. 2020
Hi guys, I have to solve this problem: I have this code:
for p=1:22
subplot(5,2,p)
end
It gives me the following error 'Index exceeds number of subplots', how can I solve it?
  2 Kommentare
Iqra Jabeen
Iqra Jabeen am 13 Sep. 2020
how to solve 2*5 grid subplot
the cyclist
the cyclist am 14 Sep. 2020
Please add more detail to this question. Or, better yet, ask a brand-new question the fully explains what you want to know.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 23 Jan. 2018
Bearbeitet: Jan am 23 Jan. 2018
If you ask subplot to draw an 11th subplot on a 5 x 2 grid, you cannot expect that it is such smart to create a new figure and reset the index to 1. Matlab cannot simply do what you mean. But you can write a corresponding command.
for p = 1:22
pp = mod(p - 1, 10) + 1;
if pp == 1
FigH = figure;
end
subplot(5, 2, pp, 'Parent', FigH);
...
end

Weitere Antworten (1)

the cyclist
the cyclist am 23 Jan. 2018
Bearbeitet: the cyclist am 23 Jan. 2018
The way you have defined the subplot layout, you have a 5-by-2 grid of subplots, which is a total of 10 subplot locations. But you are trying to place 22 subplots.
You need to increase the number of subplot locations (maybe use 5x5?), or decrease the number of subplots.
  1 Kommentar
Emrys
Emrys am 23 Jan. 2018
Bearbeitet: Emrys am 23 Jan. 2018
Is there any way of automatically creating new layouts? what I was expecting were three figures, 2 with 10 elements and one with 2 .

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by