recortar números de una matriz
Publicado por nehomar (3 intervenciones) el 02/11/2005 15:34:32
Tengo el siguiente problema necesito mostrar una matriz en un static text, la matriz es la que se muestra a continuación.
MY012 =
1.0e-005 *
-0.0000 + 0.1585i -0.0000 - 0.0000i -0.0000 - 0.0000i
0 + 0.0000i 0 + 0.3767i 0 + 0.0000i
0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.3767i
Estoy utilizando el comando dlmwrite para escribirlo en block de notas ya que van a ser varias las matrices que quiero mostrar.
dlmwrite('resultado.txt',MY012,'delimiter', '\t','precision',5)
Luego almaceno lo que contiene resultado.txt en lista y al mismo tiempo convierto en string con num2str para poder insertarla en el static text
lista=num2str(dlmread('resultado.txt','\t'))
Y por ultimo la muestro en el static text
set(handles.resultado,'string', 'matrix MY012',lista,)
ok aqui viene el problema, en el block de notas se esta escribiendo es lo siguiente, que viene siendo el número que quiero mostrar pero con muchos decimales,
-8.8162e-039+1.5849e-006i -1.5882e-022-3.1999e-011i -1.5882e-022-3.1999e-011i
0+2.1176e-022i 0+3.7667e-006i 0+2.1176e-022i
2.1176e-022+1.0588e-022i 5.294e-022-5.294e-023i -1.0588e-022+3.7667e-006i
¿que comando puedo utilizar para que al momento de escribir en el block de notas los escriba tal cual como se ven en la consola de matlab(en la consola aparecen como los mostre inicialmente), es decir, que comando puedo usar para recortar los números de la matriz y así me pueda salir tal y como quiero?
gracias de antemano.
MY012 =
1.0e-005 *
-0.0000 + 0.1585i -0.0000 - 0.0000i -0.0000 - 0.0000i
0 + 0.0000i 0 + 0.3767i 0 + 0.0000i
0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.3767i
Estoy utilizando el comando dlmwrite para escribirlo en block de notas ya que van a ser varias las matrices que quiero mostrar.
dlmwrite('resultado.txt',MY012,'delimiter', '\t','precision',5)
Luego almaceno lo que contiene resultado.txt en lista y al mismo tiempo convierto en string con num2str para poder insertarla en el static text
lista=num2str(dlmread('resultado.txt','\t'))
Y por ultimo la muestro en el static text
set(handles.resultado,'string', 'matrix MY012',lista,)
ok aqui viene el problema, en el block de notas se esta escribiendo es lo siguiente, que viene siendo el número que quiero mostrar pero con muchos decimales,
-8.8162e-039+1.5849e-006i -1.5882e-022-3.1999e-011i -1.5882e-022-3.1999e-011i
0+2.1176e-022i 0+3.7667e-006i 0+2.1176e-022i
2.1176e-022+1.0588e-022i 5.294e-022-5.294e-023i -1.0588e-022+3.7667e-006i
¿que comando puedo utilizar para que al momento de escribir en el block de notas los escriba tal cual como se ven en la consola de matlab(en la consola aparecen como los mostre inicialmente), es decir, que comando puedo usar para recortar los números de la matriz y así me pueda salir tal y como quiero?
gracias de antemano.
Valora esta pregunta


0