Borrar filtros
Borrar filtros

How do i display output figure from m file in App Designer uiaxes?

10 visualizaciones (últimos 30 días)
Good Day everyone!
I am having a confusion on how to display an output figure that I run in m file, in app designer uiaxes?
Or.. Is it possible to do so?
Okay, basically i have a button in app Designer that run m. file, which has a figure output. below is a part of the m file that plot the output figure. I set the figure to global. am not sure whether it possible or not.
global K;
K = figure;
plot(Orientation_vect,TuningCurve_RateDiff_vect(1:NumAngles), 'color', 'b')
hold on
plot(Orientation_vect1,TuningCurve_RateDiff_vect1(1:NumAngles1), 'color', 'r')
xlabel('Orientation(deg)')
ylabel('Ave firing rate relative to control (Hz)')
grid on
Next, below is the code for pushed function, which I called the global value for the figure.
% Button pushed function: PercentageButton
function PercentageButtonPushed(app, event)
run comparison.m
global K;
imshow(K,'parent',app.FiringRates);
end
turns out I'm getting error this.
Error in imshow (line 245)
images.internal.imageDisplayParseInputs({'Parent','Border','Reduce'},preparsed_varargin{:});
is there anything that Ive done wrong or Is there anything i can do to improve and make this work out?
Thank you!
  6 comentarios
Aishwarya Lakshmi Srinivasan
Aishwarya Lakshmi Srinivasan el 1 de Mzo. de 2021
@Fadilla Atyka Nor Rashid did you figure out what can be done. Even I have the same issue right now and it would be really useful if you could share your solution.
Walter Roberson
Walter Roberson el 2 de Mzo. de 2021
For most graphics calls, you can put the target axes as the first parameter of the graphics call, such as
plot(app.Axes1, rand(1,20))
hold(app.Axes1, 'on')
plot(app.Axes1, rand(1,20)*2);
hold(app.Axes1, 'off')
In most of the other graphics calls that do not accept an axes as the first parameter, you can use a 'Parent' name/value pair instead, such as
plot(rand(1,20), 'Parent', app.Axes1)

Iniciar sesión para comentar.

Respuestas (1)

Alfin Junaedy
Alfin Junaedy el 10 de Dic. de 2019
To the point.
Save figure to a file then show in App Designer.
%save figure without dispaying it in m file
f1 = figure('visible','off');
show(figureobject);
saveas(f1,'name','jpg');
%display the image file in App Designer
app.Image.ImageSource = 'name.jpg';
OK, done. I am currently also doing the same thing.
  2 comentarios
Alfin Junaedy
Alfin Junaedy el 2 de Mzo. de 2021
You can use this code for 3D plot using App designer.
data = [0:10;(0:10).^2;10:20]'; %use your own data
plot3(app.UIAxes, data(:,1), data(:,2), data(:,3), 'r-'); %adjust the UIAxes name

Iniciar sesión para comentar.

Categorías

Más información sobre Interactive Control and Callbacks en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by