app designer: how to index through multiple UIAxes

10 Ansichten (letzte 30 Tage)
Scorp
Scorp am 21 Sep. 2022
Kommentiert: Walter Roberson am 21 Sep. 2022
  1. There are 5 UIAxes objects in an App added using the Design View
  2. Component names are: app.UIAxes_1, app.UIAxes_2....
  3. How do I index through each Axes component to update the plots?
Have tried:
app.plotHandles = gobjects([app.UIAxes_1,app.UIAxes_2,app.UIAxes_3,app.UIAxes_4,app.UIAxes_5])
for i=1:5
plot(app.plotHandles(i),x(i),y(i));
end
Unable to resolve the name 'app.UIAxes_1'.
This has the error : 'Error using gobjects Inputs must be scalar numeric or a vector of array dimensions'

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 21 Sep. 2022
app.plotHandles = gobjects([app.UIAxes_1,app.UIAxes_2,app.UIAxes_3,app.UIAxes_4,app.UIAxes_5])
The gobjects() function only accepts size-related arguments -- the number of objects to create or the dimensions of the object array.
You should use
app.plotHandles = [app.UIAxes_1, app.UIAxes_2, app.UIAxes_3, app.UIAxes_4, app.UIAxes_5];

Weitere Antworten (1)

Eric Delgado
Eric Delgado am 21 Sep. 2022
Bearbeitet: Eric Delgado am 21 Sep. 2022
Hey... just put in the startup of your app the code below.
app.plotHandles = findall(app.UIFigure, 'Type', 'axes');
  1 Kommentar
Walter Roberson
Walter Roberson am 21 Sep. 2022
There is a risk that the order might not be what is needed.
There is a risk that there are other uiaxes as well.
There is a risk that there are standard axes that are not uiaxes.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Develop Apps Using App Designer finden Sie in Help Center und File Exchange

Produkte


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by