Matlab - eje de la grafica. serie de tiempo

 
Vista:
sin imagen de perfil
Val: 19
Ha aumentado su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eje de la grafica. serie de tiempo

Publicado por arturo (10 intervenciones) el 29/01/2019 18:00:06
%tengo datos correspondientes a los días del año, los días están en formato del número de día del año (1,2,3...,363,364,365), quiero graficar el día vs su valor (en ese caso volumen), pero el problema esta en que tengo datos de los últimos días del año y los primeros del siguiente año, por ejemplo: 363,364,365,1,2,3. y a la hora de ejecutar "plot" ya no tengo una serie de tiempo

%A continuación pongo mis vectores

dia=[360,361,362,363,364,365,1,2,3,4,5];
volumen=[5,6,7,8,9,10,6,6,6,6,6];
plot(dia,volumen) %pero aqui no me sale como quiero

%quiero que mi grafica quede similar a la imagen, esa la realice con un editor de imagenes graficando cada año por separado (creo que al juntarlas se me paso poner un espacio, pero la idea se entiende)

grafica-anual
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 JOSE JEREMIAS CABALLERO
Val: 7.034
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eje de la grafica. serie de tiempo

Publicado por JOSE JEREMIAS CABALLERO (5862 intervenciones) el 29/01/2019 20:02:44
1
2
3
4
5
6
7
8
9
10
11
12
clear
close all
dia1=[360,361,362,363,364,365];
volumen1=[5,6,7,8,9,10];
plot(dia1,volumen1,'b') %pero aqui no me sale como quiero
hold on
 dia2=[1,2,3,4,5]+dia1(end);
 volumen2=[6,6,6,6,6];
 plot([dia1(end) dia2],[volumen1(end) volumen2],'b') %pero aqui no me sale como quiero
 set(gca,'xtick',[dia1 dia2],'xticklabel',{dia1,[1,2,3,4,5]})
   axis([dia1(1) max([dia1 dia2 ] )  0 max(volumen1)+5])
hold off

Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab

http://matlabcaballero.blogspot.com

https://www.facebook.com/matlabcaballero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 19
Ha aumentado su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eje de la grafica. serie de tiempo

Publicado por arturo (10 intervenciones) el 29/01/2019 20:20:00
me sirvió perfecto, 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
sin imagen de perfil
Val: 19
Ha aumentado su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eje de la grafica. serie de tiempo

Publicado por arturo (10 intervenciones) el 29/01/2019 22:17:23
con pocos datos me funciona perfecto, pero cuando tengo mas de 100 valores se ve bastante feo, los números del eje están muy amontonados, se puede cambiar la escala en el eje? es decir que la distancia entre los números sea mayor por ejemplo de 2 en dos para que el eje sea: 360, 362,364,1,3,5
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: 7.034
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eje de la grafica. serie de tiempo

Publicado por JOSE JEREMIAS CABALLERO (5862 intervenciones) el 29/01/2019 22:53:48
1
2
3
4
5
6
7
8
9
10
11
12
13
clear
close all
dia1=[360,361,362,363,364,365];
volumen1=[5,6,7,8,9,10];
plot(dia1,volumen1,'b') %pero aqui no me sale como quiero
hold on
dia3=[1,2,3,4,5];
 dia2=dia3+dia1(end);
 volumen2=[6,6,6,6,6];
 plot([dia1(end) dia2],[volumen1(end) volumen2],'b') %pero aqui no me sale como quiero
 set(gca,'xtick',[dia1(1:2:end) dia2(1:2:end)],'xticklabel',{dia1(1:2:end),dia3(1:2:end)})
 axis([dia1(1) max([dia1 dia2 ] )  0 max(volumen1)+5])
hold off
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 19
Ha aumentado su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eje de la grafica. serie de tiempo

Publicado por arturo (10 intervenciones) el 29/01/2019 23:16:23
muchas gracias por su respuesta, adjunto mis datos. la primer columna es el dia y la segunda concentracion.
Aunque con su ultima respuesta me parece que ya se ha resuelto, solo debo cambiar en la linea 11 el 2 por el espacio que quiera entre los datos.
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