Viernes 1 de Noviembre de 2024, 13:37
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación Específica
»
Matlab
»
Dibujar vectores con datos en un fichero.
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Dibujar vectores con datos en un fichero. (Leído 2489 veces)
Estrufi
Miembro MUY activo
Mensajes: 158
Dibujar vectores con datos en un fichero.
«
en:
Jueves 12 de Febrero de 2009, 10:57 »
0
Hola!!!! Bueno mi duda es la siguiente:
Tengo un fichero en Matlab con la siguiente forma:
Nombre fichero: Resultadosimag0012.tif_I04_003
t: 13
paso_t: 4
calibracion_t: 1
unidad_t: s
pasox: 32
pasoy: 32
tamaño_region_2^: 7
umbral: 0.500000
calibracion_x: 1.000000
calibracion_y: 1.000000
unidad_l: mm
x y dx dy
16 496 -0.072016 -8.719640
80 464 -0.786946 0.786946
80 656 0.456001 -0.456001
112 272 2.625674 -1.268379
112 624 -0.361881 0.555926
Los valores de la taba x,y,dx,dy son grabados en el fichero de la siguiente forma:
for fila=1:Q
fprintf(f, '%dt%dt%ft%ft%ft%ft%dn',tabla_desplazamientos(fila,:));
end
Me gustaria poder visualizar usando "quiver" ó algo así, los dx y dy con respecto a los ejes x e y, Como podría hacer para leer los valores del fichero sin que me supusiera un problema la cabecera del fichero y para visualizarlo???
Muchisiiiimas gracias! Saludos!
Tweet
allisap
Miembro MUY activo
Mensajes: 259
Nacionalidad:
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #1 en:
Viernes 13 de Febrero de 2009, 23:03 »
0
saludos
supongo que esto
x y dx dy
16 496 -0.072016 -8.719640
80 464 -0.786946 0.786946
80 656 0.456001 -0.456001
112 272 2.625674 -1.268379
112 624 -0.361881 0.555926
es la salida de tu programa
que generas con
for fila=1:Q
fprintf(f, '%dt%dt%ft%ft%ft%ft%dn',tabla_desplazamientos(fila,:));
end
pero antes de eso la cebecera la debes generar con un printf
pues si entiendo, no quieres que la cabecera aparezca,...
pues elimina el printf de la cebera del archivo
Victor Pasilla Campos
Puebla, Pue
Estrufi
Miembro MUY activo
Mensajes: 158
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #2 en:
Martes 17 de Febrero de 2009, 10:39 »
0
Buenas!!!
no es eso exactamente, kiero decir , yo quiero tener ese archivo de texto con todos esos datos, pero luego quiero visualizar solo la tabla con "quiver", por decirlo de una manera, solo leer los datos que stan debajo de "x", "y", "dx","dy" y crear los ejes etc etc.. Como podría hacer?
ah! sabes si hay alguna manera en matlab de saber si existe un determinado directorio y si no es el caso, crearlo??
Saludos y gracias!
allisap
Miembro MUY activo
Mensajes: 259
Nacionalidad:
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #3 en:
Martes 17 de Febrero de 2009, 17:09 »
0
Saludos
A lo que me referia es que podias generar el archivo sin la linea de cabecera
x y dx dy
para que solo aparezcan los datos numericos, o generar dos archivos identicos, uno con y otro sin la cabecera.
lo de saber si existe un directorio creo que podrias hacerlo mkdir, que te regresa un 1 si puede crear el directorio y un mensaje de error si no puede, o si existe.
espero te sirva.
Victor Pasilla Campos
Puebla, Mexico
Estrufi
Miembro MUY activo
Mensajes: 158
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #4 en:
Martes 17 de Febrero de 2009, 17:52 »
0
Hola,
Si, ahora lo que estoy haciendo es crear un fichero en el que solo esta la matriz con los datos y me olvido de cabeceras, etc.., Crees que es la mejor opcion ó sería mejor buscar la manera de leer del fichero sólo los datos que me interesan sin tener que crear otro fichero?
Estoy usando la opcion fscanf , es mejor que textread u otras opciones de lectura??
Una ultima duda, la matriz que creo es de 7 columnas, no? y en el fichero me aparece como tal, pero solo me interesan las 4 primeras columnas, como podría eliminarlas? porque leer me lee todo el fichero y no veo la manera de leer solo las 4 columnas con fscanf.
Muchisiiimas muchisimas gracias, Saludos!
allisap
Miembro MUY activo
Mensajes: 259
Nacionalidad:
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #5 en:
Martes 17 de Febrero de 2009, 18:33 »
0
Hola,
creo que es mas simple dejar el archivo sin la cabecera para que lo puedas abrir en otro programa sin problemas
si lo quieres volver a leer en matlab no hay problema porque la linea del encabezado la puedes leer con un scanf como texto,
y los datos con otra scanf pero como datos numéricos
puedes leer las 7 columnas pero despues separarlas en vectores y eliminar los vectores que no necesitas por ejemplo el siguiente
script abre un archivo con 2 columnas lo asigna a una matriz a y luego de la matriz a separo las columnas en los vectores Temp y res
fid = fopen('resistencias.txt');
a = fscanf(fid,'%d %d',[2 inf]);
Temp=a(1,:);
res=a(2,:);
plot(Temp,res);
grid on;
espero te sirva.
Victor Pasilla Campos
Puebla, Pue
Estrufi
Miembro MUY activo
Mensajes: 158
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #6 en:
Jueves 19 de Febrero de 2009, 18:08 »
0
ok, Ya lo he conseguido grabando solo la matriz despues de crear el otro fichero, Otra duda, Cual es la mejor manera de usar Quiver cuando tengo una matriz:
matriz =
16.0000 496.0000 -0.0017 0.5740
48.0000 432.0000 0.0505 0.1444
80.0000 400.0000 -0.0059 -0.0614
80.0000 432.0000 -0.0256 -0.0999
80.0000 464.0000 0.0029 0.0196
80.0000 656.0000 -0.0288 0.0356
112.0000 624.0000 0.0747 -0.0265
Donde la primera columna son las "x", la segunda las "y", y la tercera y cuarta los "dx" (desplazamientos en x) y "dy" (desplazamientos en y) respectivamente de una imagen que se representa con una matriz de 736 puntos en la "y" 192 en las "x"?
lo digo por eso de centrarla y esas cosas.
Muchisimas gracias.
allisap
Miembro MUY activo
Mensajes: 259
Nacionalidad:
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #7 en:
Viernes 20 de Febrero de 2009, 00:34 »
0
saludos.
no conozco quiver, si pudieras decirme que hace y que necesitas hacer con tus matrices par aque te diga como te convendria guardarlas
Victor Pasilla Campos
Puebla, Pue.
Estrufi
Miembro MUY activo
Mensajes: 158
Re: Dibujar vectores con datos en un fichero.
«
Respuesta #8 en:
Viernes 20 de Febrero de 2009, 10:09 »
0
Hola! T cuento:
Hay una forma alternativa de quiver:
quiver(X,Y,U,V) donde X,Y,U,V son vectores (todos ellos con el mismo número de elementos) con las cordenadas (X
,Y
) de cada punto en el
que se ha de dibujar un vector y con los coordenadas (U
,V
) del vector a dibujar en ese punto i-ésimo.
Con los datos ejemplo:
M=[ 16.0000 , 496.0000 , -0.0189 , 5.0863;
48.0000 , 432.0000 , 0.5536 , 1.2800;
80.0000 ,400.0000 , -0.0649 , -0.5445;
80.0000 ,432.0000 , -0.2810 , -0.8853;
80.0000 , 464.0000 , 0.0319 , 0.1734;
80.0000 ,656.0000 , -0.3158 , 0.3158;
112.0000 , 624.0000 , 0.8195 , -0.2349]
quiver(M(:,1),M(:,2),M(:,3),M(:,4))
Pero quedan cosas muy raras, como te dije en el mensaje anterior, la x llega a 192 puntos, y la y a 600 y pico, no recuerdo ahora el pico....lo que queria es utilizar las opciones y hacer gracias coherentes.
Saludos y gracias!
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación Específica
»
Matlab
»
Dibujar vectores con datos en un fichero.