Matlab - como graficar en el eje X (horas, min utos y segun dos)

 
Vista:

como graficar en el eje X (horas, min utos y segun dos)

Publicado por ernesto (1 intervención) el 15/11/2011 17:19:23
hola.
necesito saber como pudiera graficar la veraible temeperuatura con respecto al timepo en matlab, donde pudiera asignar al eje Y la temperautura y al eje X el tiempo.
ejemplo alas 6:35AM 25ºC; 8:40AM 28ºC; 10:00AM 28ºC etc
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

como graficar en el eje X (horas, min utos y segun dos)

Publicado por Camilo (52 intervenciones) el 15/11/2011 17:59:46
Hola Ernesto:

Yo no soy ningun profesional con respecto a utilizar matlab, pero creo poder ayudarte en el asunto.

Lo primero que realizaria, es hacer 2 vectores: uno con los datos del eje x ( tiempo) y otro con los datos de las temperaturas.

la forma mas simple para esto es utilizar el comando fplot,

te dejo mas o menos como lo realizaria yo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
%% archivo m para graficar tiempo v/s temperatura
 
clear all
clc
 
tiempo=[6.35;8.4;10.0];
temperatura=[25;28;28];
 
grid on
axis on
title('Grafico de tiempo V/S temperatura');
xlabel('Tiempo (hr)');
ylabel('Temperatura (°C)');
f=plot(tiempo,temperatura,'r');
ylim([20 30]);
xlim([0 12]);
pause f


La escala de x no es real, pues como se esta trabajando con escala de 1 a 100, en vez de 1 a 60 ( unidad horaria), ahi si que no se como realizar eso.

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

como graficar en el eje X (horas, min utos y segun dos)

Publicado por Camilo (52 intervenciones) el 15/11/2011 18:07:21
Ernesto:

Lo que popuse como codigo es muy simple, hay formas de hacerlo de mejor forma, indicando leyendas, marcando solo los puntos, etc. metete al help de matlab y busca la funcion plot o fplot

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
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

como graficar en el eje X (horas, min utos y segun dos)

Publicado por Dave (1094 intervenciones) el 16/11/2011 02:16:00
Hola Ernesto;

Respecto a tu consulta te sugiero que los trates como datos normales, la diferencia es al momento de graficarlos, al final le agregaras datetick('x',16).

Aquí un ejemplo:

Asumiendo que se tiene los siguiente datos en un archivos Excel "ejemplo.xls"


archivo ejemplo.xls:

06:00:00 15
07:00:00 15.2
08:00:00 15.3
09:00:00 15.15
10:00:00 16
11:00:00 16.7
12:00:00 17
13:00:00 17.5
14:00:00 18
15:00:00 17.4
16:00:00 17.3
17:00:00 17
18:00:00 16.8
19:00:00 15

............
1
2
3
4
5
6
7
8
9
10
clear all
close all
clc
 
dat=xlsread('ejemplo.xls');
hora=dat(:,1);
temp=dat(:,2);
 
plot(hora,temp)
datetick('x',16)




Espero que sea de alguna ayuda.

Saludos
Dave Correa
[email protected]
http://fismatlab.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

como graficar en el eje X (horas, min utos y segun dos)

Publicado por Camilo garcía (52 intervenciones) el 16/11/2011 03:52:04
Estimado Dave:

buen aporte el que nos has dado, por que esa funcion datetick uno puede graficar min, horas ( tiempo), sin problemas

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

como graficar en el eje X (horas, min utos y segun dos)

Publicado por Federico (1 intervención) el 07/06/2016 21:18:01
Estimados,
necesito graficar temperaturas y tiempo.
Los datos los cargo de una planilla excel (va adjunta)

Tengo un problema con le formato de los vectores, la columna la carga tipo cell y eso no lo puede pasar a string cuando llama a la función plot, como hago para cargar los datos desde la planilla en formato string?

Les dejo mi código para que me orienten en la mejor solución.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
% Temperaturas
close all
clear all
% Se carga la planilla con los datos
[FileName,PathName] = uigetfile('*.xls','Seleccione el archivo');
s=strcat(PathName,FileName);
 
[num,txt,raw] = xlsread(s);
tiempos=cellstr(txt); % paso el registro del tipo cell a string
 t=(tiempos(3:length(tiempos(:,2)),2)); % guardo la columna con los tiempos
 p=tiempos(3:length(tiempos(:,3)),3); % guardo la columna con las temperaturas
 pnum=str2double(p)./1000;
 format bank
 
% t1=datestr(t,'HH:MM:SS');
 
 figure ('Position',[80 100 1100 550])
 
 plot(t1,pnum,'r')
 xlabel ('tiempo')
 ylabel('Temperatura (°C)')
 title ('Temperatura de la leche dentro del tanque de frío')
 datetick('x', 'HH:MM:SS', 'keepticks')
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