Matlab - guardar imagen de un axes en guide

   
Vista:

guardar imagen de un axes en guide

Publicado por Mon (5 intervenciones) el 16/08/2011 19:01:39
Buenas a todo el foro,
tengo una duda que me lleva perdida varios días y no consigo seguir por más que busco.
A ver si me pueden ayudar;
tengo en un axes una señal con varias lineas pintadas que van formando rectangulos
entonces una vez ejecutado un PUSH BUTTON todo me lo pinta pero lo que quiero ahora es en otro boton que me cree una imagen de todo lo que tengo en el axes y además con un nombre que yo pueda elegir.

El boton guardar lo tengo programado de la siguiente forma:

a=handles.axes1;
saveas(a,'a.jpg')

pero no me guarda todo el axes y me lo guarda como a.jpg como os acabo de comentar
¿Cómo podría hacer para que guarde todo el axes y para elegir el nombre del archivo de salida?

Gracias a todos porque en este foro he resuelto muchas de mis dudas para mi trabajo
gracias de nuevo

"EL SABER NO OCUPA LUGAR"
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO

guardar imagen de un axes en guide

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 17/08/2011 17:26:54
hola Mon.
Estoy asumiendo que tienes ciertos conocimientos de MATLAB GUIDE por eso me atrevo a copiarlo al foro, ya que los programas de MATLAB GUIDE, tiene dos partes. archivo.m y archivo.fig.

%============================
function varargout = leer_guardar_figuras1(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @leer_guardar_figuras1_OpeningFcn, ...
'gui_OutputFcn', @leer_guardar_figuras1_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function leer_guardar_figuras1_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);

function varargout = leer_guardar_figuras1_OutputFcn(~, ~, handles)
varargout{1} = handles.output;
h=figure('Position',[100 200 300 300]);
x=-6*pi:pi/20:6*pi;
plot(x,sin(x))
[filename,pathname]=uiputfile({'*.jpg;*.bmp;*.jpeg;*.fig'},'Guardar nombre de arhivo');
saveas(gcf,filename)
close(h)
handles.axes1;
plot(x,sin(x))
%========================

Saludos.
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
jjcc94@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

guardar imagen de un axes en guide

Publicado por Mon (2 intervenciones) el 18/08/2011 14:50:02
Entendido
Gracias por todo Jose me sirvió a la perfección.

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

guardar imagen de un axes en guide

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 18/08/2011 18:53:25
Me alegra que te haya servido.

Saludos.
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
jjcc94@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

guardar imagen de un axes en guide

Publicado por Sandra (1 intervención) el 25/05/2012 11:31:31
Hola!
Estoy haciendo mi proyecto fin de carrera con matlab y encontre este mensaje buscando como guardar una grafica.
En mi caso he hecho con Guide la interfaz grafica y en un trocito de la ventana principal teng una grafica.Me gustaria guardarla pero si hago lo que pones anteriormente me guarda toda la pantalla de la interfaz grafica no solo la grafica.El codigo que he probado es este:

a=handles.grafica1;
[filename,pathname]=uiputfile({'*.jpg;*.bmp;*.jpeg;*.fig'},'Guardar nombre de arhivo');
saveas(a,filename);


Agradecería mucho una ayudita!
Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

guardar imagen de un axes en guide

Publicado por Andres Felipe (8 intervenciones) el 24/09/2014 17:29:45
Tengo el mismo inconveniente de Sandra. He visto que muchos recomiendan utilizar "getimage" e 'imwrite' pero cuando va a ejecutar la función imwrite me sale el siguiente error:

Error using imwrite (line 421)
Expected DATA to be nonempty.

Esto se debe a que al usar "getimage" no obtiene la imagen sino que la variable queda vacia.

No se que hace en este caso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar