Autor Tema: Graficar datos en funcion del tiempo  (Leído 4481 veces)

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

Desconectado amartin_16

  • PIC10
  • *
  • Mensajes: 7
Graficar datos en funcion del tiempo
« en: 10 de Octubre de 2004, 17:17:00 »
Hola a todos. quisiera hacerles la pregunta:
yo esoy haciendo una aplicacion de un termostato controlado por pic, y quiero hacer un grafico de temperatura en funcion del tiempo, que se actualice automaticamente a medida que el vb va recibiendo los datos.
Alguien sabe como hacerlo??....

Desde ya muchas gracias.

Alejandro

Desconectado Colores

  • Moderadores
  • PIC16
  • *****
  • Mensajes: 232
RE: Graficar datos en funcion del tiempo
« Respuesta #1 en: 11 de Octubre de 2004, 22:56:00 »
Podés usar un PictureBox, que es un cuadro gráfico. Después podés ir tirando líneas a medida que recibís los datos con "Line".

Picture1.Line (X1,Y1) - (X2,Y2)

Con eso dibujás una línea dentro del PictureBox. Las Xs y Ys son las coordenadas dentro del PictureBox. Podés ir encadenandolas entre sí para que parezca un grafico Valor vs Tiempo.

Con Picture1.DrawWidth = 5 le das un ancho de 5 a la línea. Con FillColor le das el color.... Andá mirando las propiedades del PictureBox y te vas a dar cuenta.
Esa es la manera más fácil, al menos no usás API"s y otras yerbas raras.

Desconectado tincho_gf

  • PIC10
  • *
  • Mensajes: 7
RE: Graficar datos en funcion del tiempo
« Respuesta #2 en: 11 de Marzo de 2005, 13:30:00 »
Hola una forma que yo veo mas facil es usar el MSCHART de Vb,
te paso un codigo en donde traigo los datos del excel los que coloco en un eje, el otro dato lo tomo de una variable de tiempo que en mi caso es de 1 segundo, es muy basico pero espero que te sea util
Saludos Tincho-

---------------------------------------------------------------------------------------------------------
Dim segundo, contador As Integer
---------------------------------------------------------------------------------------------------------
Private Sub Form_Load()
contador = 0

End Sub
---------------------------------------------------------------------------------------------------------
Private Sub Timer1_Timer()
Dim x1 As Object
Set x1 = GetObject("D:!!!pruebas vbexel.xls"Giño
With x1.worksheets("hoja1"Giño
segundo = segundo + 1
If segundo >= 59 Then
    segundo = 0
    minuto = minuto + 1
End If
contador = contador + 1
MSChart1.RowCount = contador
MSChart1.Row = contador
MSChart1.RowLabel = Format(Now(), "hh:ss:mm"Giño
MSChart1.Data = .cells(contador, 1).Value
End With
 
End Sub
---------------------------------------------------------------------------------------------------------