Matlab - guide-matlab ciclo que no me imprime los valores de una matriz

 
Vista:
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 02:00:07
Buenas, tengo una duda lo que pasa es que tengo un ciclo en el cual me pide los valores pero no me imprime la matriz, necesito esa parte , no se en que estoy fallando, muchas gracias cabe resaltar que es en la guide de matlab
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
function varargout = multi(varargin)
% MULTI MATLAB code for multi.fig
%      MULTI, by itself, creates a new MULTI or raises the existing
%      singleton*.
%
%      H = MULTI returns the handle to a new MULTI or the handle to
%      the existing singleton*.
%
%      MULTI('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in MULTI.M with the given input arguments.
%
%      MULTI('Property','Value',...) creates a new MULTI or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before multi_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to multi_OpeningFcn via varargin.
%
%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
%      instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help multi

% Last Modified by GUIDE v2.5 09-Nov-2016 15:18:01

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @multi_OpeningFcn, ...
                   'gui_OutputFcn',  @multi_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
% End initialization code - DO NOT EDIT


% --- Executes just before multi is made visible.
function multi_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 multi (see VARARGIN)

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

% Update handles structure
guidata(hObject, handles);

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


% --- Outputs from this function are returned to the command line.
function varargout = multi_OutputFcn(hObject, eventdata, handles) 
% varargout  cell array for returning output args (see VARARGOUT);
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)

%l = inputdlg('ingrese la longitud de la linea: ');% En metros
%f = inputdlg('ingrese la frecuencia de la linea: ');

t2= inputdlg('ingrese el numero de conductores: ');
  n=str2double(t2);% convertir a numero
    
   matizx = zeros(1,n);
   matrizy = zeros(1, n);
   matrizr = zeros(1, n);
  disp(' ');

 for i = 1:n;
        x(i) = inputdlg(sprintf('x-coord of cond. #%d: ', i));
        y(i) = inputdlg(sprintf('y-coord of cond. #%d: ', i));
        r(i) = inputdlg(sprintf('radius of cond. #%d: ', i)); % metros
         display(' ');
 end
 
 matrizD = zeros(n);
for i = 1:n;
    for j = 1:n;
        matrizD(i, j)= hypot(x(i) - x(j), y(i) - y(j));
    end
end
matrizD=zeros(n);
 texto11=[ ];
for k=1:n % para cada fila de la matriz 
text3=sprintf('  ',matrizD(n,:)); % hago un texto con los números 
texto11=sprintf('%shola%s',texto11,text3); % agrego una fila al texto 
end
t=get(handles.text1,'String');% #de conductores
t1=str2double(t);% convertir a numero
var1 = t1*t1;
 
% matriz m*n de valores  
matriz=zeros(var1);
 texto=[ ];
for k=1:var1 % para cada fila de la matriz 
text2=sprintf('  ',matriz(k,:)); % hago un texto con los números 
texto=sprintf('%shola%s',texto,text2); % agrego una fila al texto 
end
% muestro el texto en la GUI 
set(handles.text2,'String',texto);
set(handles.text3,'String',texto11);
 
 
function text1_Callback(hObject, eventdata, handles)
% hObject    handle to text1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
 
% Hints: get(hObject,'String') returns contents of text1 as text
%        str2double(get(hObject,'String')) returns contents of text1 as a double
 
 
% --- Executes during object creation, after setting all properties.
function text1_CreateFcn(hObject, ~, ~)
% hObject    handle to text1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called
 
% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor','white');
end
 
 
 
function text3_Callback(hObject, eventdata, handles)
% hObject    handle to text3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
 
% Hints: get(hObject,'String') returns contents of text3 as text
%        str2double(get(hObject,'String')) returns contents of text3 as a double
 
 
% --- Executes during object creation, after setting all properties.
function text3_CreateFcn(hObject, eventdata, handles)
% hObject    handle to text3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called
 
% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor','white');
end
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por Royeth (1818 intervenciones) el 12/11/2016 03:52:07
los códigos guide para ejecutarse necesitan del archivo .fig que contiene información de la interfaz , si puedes sube tus archivos y con gusto puedo ayudarte
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
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 04:10:13
muchas gracias, los archivos se los mande a su correo, lo que sucede es que los ciclos for que están en comentarios deben salir en matriz y no he sabido como hacerlo, de antemano muchas 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
Imágen de perfil de Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por Royeth (1818 intervenciones) el 12/11/2016 04:27:03
tienes errores en tu código dado que matlab maneja algo que se llama celdas y matrices y son diferentes , cuando obtienes x lo estás obteniendo como string y en celdas , debes convertirlo a matrices para poderlo usar , con str2double para obtenerlo en número y cell2mat para obtenerlo en matrices

no es lo mismo x={'4' '2'} que x=[4 2]

con los últimos es que puedes hacer operaciones numéricas


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
sin imagen de perfil

guide-matlab

Publicado por joan (31 intervenciones) el 12/11/2016 04:40:26
Usted me habla de esta parte para obtener las coordenadas?
1
2
3
4
5
6
7
for i = 1:n;
        x(i) = inputdlg(sprintf('x-coord of cond. #%d: ', i))
        y(i) = inputdlg(sprintf('y-coord of cond. #%d: ', i));
        r(i) = inputdlg(sprintf('radius of cond. #%d: ', i)); % metros
        display(' ');
 
end
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por Royeth (1818 intervenciones) el 12/11/2016 05:27:00
correcto al obtener las coordenadas con inputdlg se guardan en tipo texto le recomiendo utilizar str2double antes de ellos para que se le guarden como números sería algo como
1
str2double(inputdlg(sprintf('x-coord of cond. #%d: ', i)))

y así para todos los inpudlg que tenga
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
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 16:55:48
que pena, vuelvo y pregunto, en que parte ya meteria el cell2mat? lo que sucede es que le debo agradecer porque ya se corrigió el problema es solo que no me imprime la matriz, no se en que parte poner eso el cell2mat.
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 12/11/2016 17:14:47
Trato de reproducir el archivo fig a partir del m que haz puesto en el foro y pero hay muchos vacíos que tengo. Deberías subir tus archivo fig al foro para poder ver que parte se tiene que modificar.

Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programación matlab
[email protected]


http://matlabcaballero.blogspot.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
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 17:21:58
se lo mando al correo? es que me dice que el formato de archivo soportado es zip,gzip y bzip2
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 12/11/2016 17:31:18
Te explico mejor, crea una carpeta, luego agrega a ese carpeta los dos archivos tanto el fig y el m y luego comprime con zip luego sube al foro, ese archivo comprimrido.
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
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 18:02:54
el archivo
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por Royeth (1818 intervenciones) el 12/11/2016 17:29:25
eso depende donde quieras imprimir la matriz, la interfaz que tiene no tiene nombres , quizás porque aún no la has terminado
puedes imprimirla en un msgbox , o mostrarla en la interfaz
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
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 17:48:03
Es que si me imprime, pero solo la palabra hola, que yo le puse, entonces estoy revisando si es por son por nombres
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por Royeth (1818 intervenciones) el 12/11/2016 17:59:39
Ok en ese caso el problema es que tienes %s y vas a mostrar un texto, entonces si es número no te va a resultar
para eso puedes cambiar el formato a %f o convertir los textos que son números a string con num2str

1
sprintf('%fhola%f',texto11,text3)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

guide-matlab ciclo que no me imprime los valores de una matriz

Publicado por joan (31 intervenciones) el 12/11/2016 18:24:49
muchisimas gracias, ya me da resultados nùmericos, ahora voy a revisar que este haciendo las operaciones bien
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