image upside down (including axis labels etc) using App designer: same code OK outside GUI

7 vues (au cours des 30 derniers jours)
Using image(app.UIAxes,C) in draw() callback. ComponentBrowser/Axes/Rulers/YDir setting makes no difference. Changing YDir after image() line changes the displayed image, but leaves the axes upside down. No idea what [x,y]=ginput(1) is giving back - not what I wanted anyway.
  2 commentaires
Walter Roberson
Walter Roberson le 23 Fév 2023
I wonder if somehow you have two axes in the same place?
DId you possibly use yyaxis ? Or did you possibly create an axes as part of the app design, but also call axes() inside your code, and so doing create a second axes?
Stuart MacGregor
Stuart MacGregor le 23 Fév 2023
Déplacé(e) : Voss le 23 Fév 2023
No, just called : app.data.classname.function(app.UIAxes) in the draw() callback, and the class method calls image(ax,C), where ax is the passed axes object.
The text of the axes ruler numbers is drawn upside down! I could not do that if I tried.

Connectez-vous pour commenter.

Réponses (1)

Stuart MacGregor
Stuart MacGregor le 23 Fév 2023
shut down matlab and opened it again, and it all works!
Some internal matlab state bug.
  2 commentaires
Stuart MacGregor
Stuart MacGregor le 24 Fév 2023
Happened again: seems can be caused by exiting a GUI using the window close x button (on Ubuntu) rather than by the Done button on the GUI display.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by