Autor Tema: Problema con Matlab

0 Usuarios y 1 Visitante están viendo este tema.

05 Diciembre, 2009, 07:55 pm
Respuesta #10

gabrielo

  • $$\Large \color{#6a84c0}\pi$$
  • Mensajes: 28
  • Karma: +0/-0
  • Sexo: Masculino
Estimado, una pregunta más; ¿cómo hago para que el eje Y me quede en escala logarítimica?
Muchas gracias!
Defiende tu derecho a pensar, porque incluso pensar de manera errónea es mejor que no pensar-Hipatia

05 Diciembre, 2009, 11:25 pm
Respuesta #11

argentinator

  • Consultar la FIRMAPEDIA
  • Administrador
  • Mensajes: 7,797
  • País: ar
  • Karma: +0/-0
  • Sexo: Masculino
en la línea de comandos, escribí

help plot


Fijate a ver qué dice de la escala logarítmica.

Otra forma obvia es hacer:

plot(x,log(y),'-' )

En todo caso, cuidado con los valores negativos!!!

06 Diciembre, 2009, 03:25 am
Respuesta #12

gabrielo

  • $$\Large \color{#6a84c0}\pi$$
  • Mensajes: 28
  • Karma: +0/-0
  • Sexo: Masculino
Argentinator, he adecuado el programa para una matriz 17x17. Quiero saber como hago que el eje Y quede en escala logarítmica, ya que no pude hacerlo por más que lo que intente.
Código: [Seleccionar]
A=zeros(17);

A(2,1)=.461323;
A(3,2)=0.69981;
A(4,3)=0.79998;
A(5,4)=0.699963;
A(6,5)=.657;
A(7,6)=.555;
A(8,7)=.565;
A(9,8)=.454;
A(10,9)=.3245;
A(11,10)=.345;
A(12,11)=.35634;
A(13,12)=.245;
A(14,13)=.232344;
A(15,14)=.13433;
A(16,15)=.143243;
A(17,16)=.032434;   %termino la subdiagonal con las probabilidades de supervivencia

A(1,4)=.051;
A(1,5)=.0342;
A(1,6)=.0454;
A(1,7)=.02332;
A(1,8)=.0342;
A(1,9)=.04454;
A(1,10)=02349;    %termino la primer fila con las tasas de fecundidad

%queda pronta la matriz de leslie



n=[132; 136; 130; 124; 133; 123; 112; 111; 106; 94; 88; 81; 77; 76; 68; 52; 58];

%queda pronto el vector de poblacion




  resultado = zeros(17,50);
  for k = 1:50
     n = A*n;
     resultado(:,k) = n;
  end


  t = [1:1:50];

  edad0 = resultado(1,:);
  edad5 = resultado(2,:);
  edad10 = resultado(3,:);
  edad15 = resultado(4,:);
  edad20 = resultado(5,:);
  edad25 = resultado(6,:);
  edad30 = resultado(7,:);
  edad35 = resultado(8,:);
  edad40 = resultado(9,:);
  edad45 = resultado(10,:);
  edad50 = resultado(11,:);
  edad55 = resultado(12,:);
  edad60 = resultado(13,:);
  edad65 = resultado(14,:);
  edad70 = resultado(15,:);
  edad75 = resultado(16,:);
  edad80 = resultado(17,:);

  hold off;

  clf;

  hold on;

  plot(t,edad0,'-y');
  plot(t,edad5,'-m');
  plot(t,edad10,'-c');
  plot(t,edad15,'-r');
  plot(t,edad20,'-g');
  plot(t,edad25,'-b');
  plot(t,edad30,'-w');
  plot(t,edad35,'-k');
  plot(t,edad40,':y');
  plot(t,edad45,':m');
  plot(t,edad50,':c');
  plot(t,edad55,':r');
  plot(t,edad60,':g');
  plot(t,edad65,':b');
  plot(t,edad70,':w');
  plot(t,edad75,':b');
  plot(t,edad80,'-.y');

figure(1)

%aqui quedaria el grafico con el comportamiento de la poblacion por 15 periodos de tiempo
Defiende tu derecho a pensar, porque incluso pensar de manera errónea es mejor que no pensar-Hipatia

06 Diciembre, 2009, 04:13 am
Respuesta #13

argentinator

  • Consultar la FIRMAPEDIA
  • Administrador
  • Mensajes: 7,797
  • País: ar
  • Karma: +0/-0
  • Sexo: Masculino
Bueno, lo malo de tu programa es que tiene 17 lineas que hacen lo mismo.
Todas esas edades y plots, tienen que estar ahora en un ciclo for de 17 pasos.

¿No probaste escribiendo help plot, para ver qué opción hay que usar para la escala logarítmica?
Si no hay nada ahí seguí investigando, por ejemplo con help axes, o help axis.
La verdad es que no me acuerdo, porque nunca me gustó usar escalas logarítmicas, así que no uso esas opciones, y no tengo el programa instalado para fijarme.


19 Abril, 2010, 10:53 pm
Respuesta #14

administrador

  • Administrador
  • Mensajes: 1,595
  • País: ar
  • Karma: +0/-0
  • Sexo: Masculino
Quedó exactamente como quería, muchas gracias.

http://rapidshare.com/files/316457924/graph.jpg.html

Muchas gracias!


Así no se suben los gráficos en el foro.
Fijate que al editar el post, abajo dice "Opciones adicionales".
Si hacés clic, aparecen varias opciones, y hay una para adjuntar archivos.
Ponelo ahí, y no con la etiqueta img.

Después te enseño a hacerlo visible...

Igual ya lo vi.
Muy bonito, jeje

No le importó demasiado tu idea, y ahora ese link está inservible. 
Posiblemente tengamos que ser más firmes de entrada con las cosas mal hechas.  :banghead:

20 Abril, 2010, 04:19 am
Respuesta #15

argentinator

  • Consultar la FIRMAPEDIA
  • Administrador
  • Mensajes: 7,797
  • País: ar
  • Karma: +0/-0
  • Sexo: Masculino
Y sí, hay veces que la gente anda "a la pesca" de una solución y luego sigue su rumbo.
Es algo decepcionante esa actitud, pero también es comprensible.
Es un mundo con demandas y ritmos despiadados.

No sé si siempre puedan darse normas para "todos los casos posibles". Se aprende de los casos antiguos maneras de enfrentar casos nuevos.

Saludos