Matlab - dudas guide

 
Vista:

dudas guide

Publicado por PWE (13 intervenciones) el 25/06/2007 10:40:50
Hola,

Dos dudillas,

*como añado una imagen de fondo en guide en la versión 6.0 de matlab...y en que parte del código .m de guide.

*como pongo dos graficas en un axe??como elijo el color??

Gracias.
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

RE:dudas guide

Publicado por Julian (75 intervenciones) el 25/06/2007 20:08:42
Bueno, en cuanto a la primera pregunta, de cargar una imagen de fondo, no estoy seguro de si pueda hacerse directamente sobre la ventana de figura, en ocasiones anteriores lo había hecho sobre controles modificando la propiedad CDATA. Una solución sería arrastrar un texto estático de igual dimensión de la ventana de figura y modificar dicha propiedad en la función de inicio, ya que aquí es donde se ejecutan todas las instrucciones previas a la visualización del interfaz. Por ejemplo, el siguiente código aparece cuando se crea un GUI, en él se escribe la siguiente instrucción:

function untitled_OpeningFcn(hObject, eventdata, handles, varargin)

% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to untitled (see VARARGIN)

% Choose default command line output for untitled
handles.output = hObject;

%
% INSTRUCCION PARA CARGAR LA IMAGEN DE FONDO.
set('Parent',handles.text1,'CData',matriz RGB de 3D)

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes untitled wait for user response (see UIRESUME)
% uiwait(handles.figure1);

En algunos casos es necesario usar otras instrucciones como IMREAD y IMRESIZE para obtener el vector de valores RGB de 3 dimensiones y modificar el tamaño de la figura.

Por otra parte, para visualizar dos gráficas en un mismo Axe, se puede hacer de varias formas:

1) Usar el comando LINE, por ejemplo en el Callaback de un botón, escribir lo siguiente (previamente se ha creado un Axes):

x=(-10:0.1:10);
u=x.^2;
v=1/2*x.^2;
line('Parent',handles.axes1,'XData',x,'YData',u,'Color',[0 0 1]);
line('Parent',handles.axes1,'XData',x,'YData',v,'Color',[1 0 0]);

2) Usar el comando PLOT y la función HOLD. En el Callback del botón, escribir lo siguiente (previamente se ha creado un Axes):

x=(-10:0.1:10);
u=x.^2;
v=1/2*x.^2;
hold on
plot(handles.axes1,x,u,'b')
plot(handles.axes1,x,v,'r')
hold off

3) Usar el comando PLOT. Primero se debe modificar la propiedad 'NextPlot' a 'Add' y en el Callback del botón, escribir lo siguiente (previamente se ha creado un Axes):

x=(-10:0.1:10);
u=x.^2;
v=1/2*x.^2;
plot(handles.axes1,x,u,'b')
plot(handles.axes1,x,v,'r')

Una función para borrar el trazado en los ejes es CLA. Por ejemplo,

cla(handles.axes1)

Espero que te sirva...!
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

RE:dudas guide

Publicado por PWE (13 intervenciones) el 25/06/2007 20:31:41
venga gracias,seguro que me sirve.pero tengo q cambiar de versión de matlab pq en la que tengo lo del opening_fcn no me aparece.

saludos.

gracias.
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