Foros del Web » Programación para mayores de 30 ;) » .NET »

graficas con ASP:NET Y OWC

Estas en el tema de graficas con ASP:NET Y OWC en el foro de .NET en Foros del Web. que tal, sucede que necesito graficar la siguiente tabla: ----------------------------------------- HORA | VALOR ----------------------------------------- 06:00 | 2345 07:00 | 2325 08:00 | 5567 09:00 | ...
  #1 (permalink)  
Antiguo 24/10/2003, 13:53
 
Fecha de Ingreso: abril-2003
Mensajes: 66
Antigüedad: 21 años, 1 mes
Puntos: 0
graficas con ASP:NET Y OWC

que tal,

sucede que necesito graficar la siguiente tabla:

-----------------------------------------
HORA | VALOR
-----------------------------------------
06:00 | 2345
07:00 | 2325
08:00 | 5567
09:00 | 5667
10:00 | 2345
...
23:00 | 3465
00:00 | 6875
...
04:00 | 3455
05:00 | 7856

utilizo los componentes web de office xp (OWC10) para generar la grafica con ASP.NET con datos almacenados en MS Access.el problema es que para poder generarla, es necesario que cambie los datos de las horas y dejarlos como numericos, es decir, en lugar de tener en la tabla la hora '10:00' tendre el numero 1000. el detalle aca es que necesito que el rango de valores del eje x sea de 600 a 500, pero por default la grafica me ordena los datos y me los da de '0000' a '2300'.

alguien puede ayudarme? como le hago para poder utilizar en las graficas otro tipo de datos que no sea numerico (fecha/hora por ejemplo)? y como le hago para ordenar los datos de '06:00' a '05:00'?


espero haber sido explicito y que alguien pueda ayudarme, URGE!!

gracias de antemano.
  #2 (permalink)  
Antiguo 27/10/2003, 10:48
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Hola, en mi caso cuando utilizo los OWC para graficar lo he hecho con valores numéricos y la verdad no se si se pueda con un campo hora (aunque si así fuera, que es lo que quisieras graficar..?? ), lo que se me ocurres es que tomes el valor de hora en numero 10:00 = 10 y al momento de graficar lo regreses a su formato normal. (hacer una funcion)

Con ello trabajar con valores pero al final lo que s emuestra al usuarios es la hora,

Espero que mas o menos te haya dado una mejor idea

Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 28/10/2003, 09:19
 
Fecha de Ingreso: abril-2003
Mensajes: 66
Antigüedad: 21 años, 1 mes
Puntos: 0
hola RootK,
agradezco tu sugerencia, de hecho, ya he tratado de esa forma y si funciona, el unico detalle es el siguiente:

al ser numericos, el eje X va de 0 a 23. yo necesito graficar desde 6:00 am a 5:00 am, es decir necesito que el eje X vaya asi:

6, 7, 8, 9, 10, 11.......21, 22, 23, 0, 1, 2, 3, 4, 5

pero aunque ordene el arreglo que alimenta al chart, no me respeta el orden y siempre grafica de 0 a 23 y no de 6 a 5 como yo requiero.


alguna sugerencia??

muchas gracias.
fvilla
  #4 (permalink)  
Antiguo 28/10/2003, 10:04
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
siempre grafica de 0 a 23 y no de 6 a 5 como yo requiero.
MM... no te entendí esa parte, en si lo que necesitas es que vaya así...

6, 7, 8, 9, 10, 11,12,13.......21, 22, 23, 0, 1, 2, 3, 4, 5

y que termine en 5 ????

Si es así.. porque los valores no los guardas en un array???, ya vez que para leer los valores van separados por un tabulador...

Ejemplo:

LLenas tu arreglo
arr(0) = 6
arr(1) = 7
...
...
...
arr(x) = 5...

y cuando desees escribirlos lo guardas en tu variable que va a ser la que recoga los valores

Cita:
For i=0 to tamaño_arreglo - 1
If band Then
X &= Chr(9) 'Voy separando los valores
End If
band = True
X &= arr1(i) 'Lleno mi array
Next
al final el valor de X me quedaría con éstos valores

x = 6 (separado por el tabulador) 7 (separado)..... 5

para despues ponerlo como valor al gráfico OWC

Cita:
Dim objSeries As g.WCSeries
objSeries = objChart.SeriesCollection.Add(0)
....
todo tu demas code
....
objSeries.SetData(g.ChartDimensionsEnum.chDimValue s, _
CInt(g.ChartSpecialDataSourcesEnum.chDataLiteral), X )
y ya cuando grafique te respetará el orden.

Este ejemplo es utilizando los OWC..ok..???

Espero hay sido mas o menos claro.

P.D Recuerda que los valores van separado por un tabulador, es por eso que utilicé el chr(9) = tabulador

Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #5 (permalink)  
Antiguo 28/10/2003, 10:34
 
Fecha de Ingreso: abril-2003
Mensajes: 66
Antigüedad: 21 años, 1 mes
Puntos: 0
hola RootK,

ya he tratado con arreglos y nada. hice lo que me dices, puse mi arreglo en una variable X separando los elementos con tabulador:

While DataReader1.Read
X &= DataReader1.GetValue(0) & Chr(9)
i = i + 1
End While

pero me regresa el mismo resultado. podria enviarte mi codigo para que verificaras? o lo escribo todo aca en un mensaje nuevo?

gracias.
  #6 (permalink)  
Antiguo 28/10/2003, 10:54
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
While DataReader1.Read
X &= DataReader1.GetValue(0) & Chr(9)
i = i + 1
End While
Por lo que estoy viendo aqui estas llenando desde un principio a X con los valores de tu reader verdad..?? pero una pregunta.. los valores que tienes en tu datareader1 que valores son lo que estas recogiendo..???

Porque por lo visto estarías graficando pero en base a los valores de X o cuales son los valores que estas tomando para graficar..??
  #7 (permalink)  
Antiguo 28/10/2003, 11:04
 
Fecha de Ingreso: abril-2003
Mensajes: 66
Antigüedad: 21 años, 1 mes
Puntos: 0
mira,

mi codigo original es:

While DataReader1.Read
aX(i) = DataReader1.GetValue(0)
' aqui reemplace a aX por X para seguir tu sugerencia
' X &= DataReader1.GetValue(0) & Chr(9)
aY(i) = DataReader1.GetValue(1)
aZ(i) = DataReader1.GetValue(2)
i = i + 1
End While

' mas codigo .....

'Populate the X and Y values from array:
Chart1_Series1.SetData OWC10.ChartDimensionsEnum.chDimXValues, OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, aX)
Chart1_Series1.SetData(OWC10.ChartDimensionsEnum.c hDimYValues, OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, aY)
Chart1_Series2.SetData(OWC10.ChartDimensionsEnum.c hDimXValues, OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, aX)
Chart1_Series2.SetData(OWC10.ChartDimensionsEnum.c hDimYValues, OWC10.ChartSpecialDataSourcesEnum.chDataLiteral, aZ)



pero de ninguna forma funciona como yo requiero, si grafica, pero no en el orden que ami me interesa. el data reader contiene los datos en orden, de 6 a 5, si verifico los valores que llegan tanto al arreglo aX como a la variable X, estan en el orden correcto, pero como que cuando los asigno a la grafica es en donde ya no me respeta el orden.

repito, crees que deberias ver mi codigo?


gracias.

fvilla.
  #8 (permalink)  
Antiguo 29/10/2003, 11:29
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cheque que estes llenando tu arreglo aY(i) = DataReader1.GetValue(1) con los valores deseados, porque posiblemente los estes llenando pero no en el orden que quieres.

Suerte
  #9 (permalink)  
Antiguo 29/10/2003, 14:54
 
Fecha de Ingreso: abril-2003
Mensajes: 66
Antigüedad: 21 años, 1 mes
Puntos: 0
de hecho RootK, he realizado un response.write para visualizar los valores de los arreglos, y el arreglo aX que es el que alimenta al eje X esta en el orden que yo requiero, po0r eso me extraña el comportamiento del chart. si te fijas, en mi segundo mensaje mencione que aunque ordeno el arreglo, el chart no me respeta el orden.

alguna idea?? no tienes algun ejemplo para graficar con ASP.NET?

gracias.
  #10 (permalink)  
Antiguo 20/11/2004, 10:58
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
alguien puede postaer algun pokito de codigo para hacer graficos de torta en OWc o de alguna forma debo mostrar 4 datos de una base de datos y hacer que se vean en grafico de torta
  #11 (permalink)  
Antiguo 21/11/2004, 16:45
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
yapues cumpas alguno con algun ejmplito
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:40.