FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Problema Representado
Buenas,
Estoy haciendo un programa para poder modificar señales dependiendo de unos parámetros pero a la hora de representarlas no me actualiza la gráfica. Es decir, me representa el primer bloque de 512 muestras correctamente, pero luego no elimina el anterior antes de representar el siguiente. He probado con varias funciones pero ninguna me da resultado, ¿qué función podría hacer eso?? Dejo el código que tengo por si ayuda.
Muchas gracias de antemano!! PD: Esto ahora esta asignado a un botón, pero posteriormente se lo asignare a un contador para que se haga automáticamente mientras haya señal a la entrada. |
#2
|
||||
|
||||
Hola DugT y bienvenido a Club Delphi
Como a todos los que se inician te invitamos a leer nuestra Guía de estilo. Con respecto a tu mensaje, creo que debes haber copiado mal el código al mensaje ya que como está no podría compilar. La estructura del ciclo for es incorrecta, debería ser: Código:
for (inicio-expresion; condicion-expresion; incremento-expresión) [{] declaración; [}] Código:
Chart1->Series[0]->AddXY(AXValue, AYValue, Label, Color); // o también podría ser este modo: Series1->AddXY (AXValue, AYValue, Label, Color);
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
|||
|
|||
Muchas gracias!!
Tienes razón xD, no se porque la previsualización del mensaje me salia todo bien, y cuando se ha enviado ha salido ese engendro xDD. Lo siento. El código que tengo para representar en la gráfica es este: Código PHP:
Muchas gracias por la ayuda!! A ver si ahora que esta bien copiado el código a alguien se le ocurre una función para hacer eso! |
#4
|
||||
|
||||
Perdon nose si te puedo ayudar pero hace varios años hice una grafica parecida y cargaba los valores de esta forma:
Se que esta en delphi pero en 5 seg lo puedes llevar a c++ que tambien es mi leguaje preferido. Espero te sirva un saludo |
#5
|
||||
|
||||
Hola DugT.
No sé si interpreto cuál es el problema pero hice una prueba simple: Código:
#define TB 20 int bloque[TB]; int bloquef[TB]; void __fastcall TForm1::FormCreate(TObject *Sender) { randomize(); for(int i = 0; i < TB; i++) { bloque[i] = random(200)+1; bloquef[i] = random(200)+1; } } void __fastcall TForm1::Button1Click(TObject *Sender) { for( int i=0; i < TB ; i++){ Series1->AddXY(i,bloque[i],IntToStr(bloque[i]), clTeeColor); Series2->AddXY(i,bloquef[i],IntToStr(bloquef[i]), clTeeColor); } } Saludos Edito: Si pensas que te puede servir de algo te adjunto los fuentes de la prueba.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 13-09-2013 a las 15:08:37. |
#6
|
|||
|
|||
Muchas gracias por responder!!
La gráfica si que se me representa correctamente, pero esa función esta asignada a un botón, entonces debe representar diferentes vectores cada vez que lo pulso. Mi problema reside en que, cuando pulso el botón representa el nuevo vector, pero no elimina el representado anteriormente, con lo cual solapan y se crea un gráfico donde no se ve nada :S. Mi duda era, si hay alguna función para eliminar lo que se ha representado con anterioridad para representar nuevo los nuevos valores del vector. De nuevo, muchas gracias! |
#7
|
||||
|
||||
Cita:
Código:
Series1->Clear(); Series2->Clear();
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
|
|