Visual Basic - Ayuda con MSCHART por favor!!..

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda con MSCHART por favor!!..

Publicado por Mc_Gregor (5 intervenciones) el 02/07/2007 00:24:11
HOla, estoy teniendo unos problemitas para graficar con MSCHART en visual basic 6
Lo que quiero hacer es graficar en lineas 2d (unas 5 mas o menos) en funcion al tiempo,
esto quiere decir que en el vector Y tienen q ir unos datos de las lineas y en la X los tiempos..
El problema radica que en internet todos los ejemplos q vi, son extrayendo datos de hojas excel o bd access, lo que yo quiero en realidad es agarrar los datos de unas formulas dentro de mi software..
Por Ej:
Dentro de un FOR tengo que..

Dim i As Integer

For i = 1 To 3600 ' Los valores de las K son valores constantes..

A(i) = B(i - 1) + K2 * C(i - 1) * D(i - 1) - K1 * A(i - 1) * E(i - 1)
B(i) = B(i - 1) + K1 * A(i - 1) * E(i - 1) - K3 * B(i - 1) * E(i - 1) + K4 * C(i - 1)
C(i) = C(i - 1) + K3 * B(i - 1) * E(i - 1) - K4 * A(i - 1) * F(i - 1)
D(i) = D(i - 1) + K5 * A(i - 1) * B(i - 1) - K6 * C(i - 1) * D(i - 1)
E(i) = E(i - 1) + K5 * C(i - 1) * B(i - 1) - K6 * C(i - 1) * D(i - 1)

Next

Bueno, en este caso A, B, C, D, E tendrian que ir en la columna Y, y las sub (i) en la X, (por lo menos creo yo)
porque i iria 3600 veces, cambiando los valores de las sub i..
Ok entonces sabemos por ejemplo que:
A(10)= 23,55
A(11)= 25,55
A(12)= 28,06 etc..... Lo mismo para B, C, D, E, hasta (3600)
------------------------------------------------------------------------------------------------------------------------

A(0)= 0,555
B(0)= 0,6874
C(0)= 0, 987
D(0)= 0,5754
E(0)=0,005246874

son valores constantes tambien pero mi preocupacion es graficar las A, B, C, D, E en funcion a las "i" osea, tiempo..

Como le hago para graficar eso en un MSCHART POR FAVOR, ya me lei toda la info que puedo y no logro sacar los resultados en un grafico de LINEAS 2D nada mas..
es para ver rendimientos..
Agradeceria su ayuda por favor..
GRACIAS
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

RE:Ayuda con MSCHART por favor!!..

Publicado por Leonardo (50 intervenciones) el 02/07/2007 16:30:37
Prueba haciendo algo asi; espero q te sirva...... no verifique el codigo, pero no debe estar muy lejos de esto!

Dim mtzGrafico(5,3600) As Single

for i = 1 to 3600
mtzGrafico(0, i) = FormulaA
mtzGrafico(1, i) = FormulaB
mtzGrafico(2, i) = FormulaC
mtzGrafico(3, i) = FormulaD
mtzGrafico(4, i) = FormulaE
next i

MSChart1.ChartData = mtzGrafico

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

Hola leonardo

Publicado por Mc_Gregor (5 intervenciones) el 02/07/2007 17:27:46
Gracias por responder, he probado el codigo q me pasaste de todos los angulos pero no resuelve el problema, no logro sacar una linea :/
Hace como 2 semanas estoy con este problemita, me esta volviendo loco jajaja..
Tendrias alguna otra sugerencia?? por favor.. No le entiendo a este chart!!!.. q cosas que le doy la vuelta y no logro sacar los datos en la grafica..
pasa q no se como sacarlas.. Porq si bien sabemos:
A(0)= 0,00654
A(1)= 0,0987
A(2)= 1,25 ........................... A(3600)= 2,9831654

B(0)= 0,00687
B(1)= 0,0657
B(2)= 0,574634 ........................... B(3600)= 1,9831654

estos datos son de ejemplo nada mas, ya que la formula entrega datos distintos de acuerdo a unos datos de entrada que le das..
Todo funciona bien hasta que se cargan los datos en A(i), B(i)... etc..
Pero no logro sacar de ninguna forma a una grafica..
Se que las Sub "i" representarian el instante en el tiempo e irian en el vector X
HEEEEEELP!!!...
:/
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

RE:Ayuda con MSCHART por favor!!..

Publicado por Leo (50 intervenciones) el 02/07/2007 17:42:13
Private Sub Form_Load()
Dim mat(5, 3600) As Single
Dim i As Integer

For i = 1 To 3600
mat(1, i) = i / 100
mat(2, i) = i / 200
mat(3, i) = i / 300
mat(4, i) = i / 400
mat(5, i) = i / 500
Next i

MSChart1.ChartData = mat
End Sub

Pruebo con este codigo y me grafica las 5 lineas diagonales.
Pone este codigo para probar como funciona mas o menos el control y luego anda adaptandolo a tu codigo.

Podrian ser dos cosas:

1- Proba activando (en la pagina de propiedades del control) la opcion "Serie en filas"
2- Quizas el error q estas cometiendo es q al poner las formulas en el mismo ciclo, utilizas el valor anterior de cada valor q actualmente calculas y eso te da cero.....
A(i) = B(i - 1) + K2 * C(i - 1) * D(i - 1) - K1 * A(i - 1) * E(i - 1)
La primera vez q accede al ciclo B(i-1), C(i-1), D(i-1), E(i-1) y A(i-1) valen cero, a menos q los inicialices antes....

Espero q te sirva....
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

RE:Ayuda con MSCHART por favor!!..

Publicado por Mc_Gregor (5 intervenciones) el 04/07/2007 18:19:46
mmmmm no puedo solucionar el problema :(
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