Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Comment afficher des données issues d'une grille dans un graphe en Delphi? [ Algorithme / Maths ] (edlain)

jeudi 13 décembre 2007 à 16:50:45 | Comment afficher des données issues d'une grille dans un graphe en Delphi?

edlain

Bonjour,

J'ai des données issues d'un fichier que j'ai stocké dans une grille. Mais je n'arrive pas à les afficher sur un graphe (Outils TeeChart utilisant l'objet TChart). J' ai choisie une représentation TlineSeries mais je n'arrive pas à transferer les données de la grille et a les afficher.

Voici le code que j'ai écrie:


Procedure TForm1.Series1Click(Sender: TChartSeries; ValueIndex: Integer;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  var
     i, long_list:Integer;

begin
  long_list:= ComboBox1.Items.Count;
  for i:=0 to long_list do
  begin
     Series1.XValues.Value[i]:=strtofloat(StringGrid1.Cells[1,i]);
     Series1.YValues.Value[i]:=strtofloat(StringGrid1.Cells[2,i]);

  end;

end;


jeudi 13 décembre 2007 à 18:23:48 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

cantador

Membre Club
essaie comme çà :

procedure TForm1.Chart1BeforeDrawSeries(Sender: TObject);
var
    i;
begin
series1.Active := false;
 for i:=0 (ComboBox1.Items.Count - 1) do
do
begin
series1.XValues.Value[0] := strtofloat(StringGrid1.Cells[1,i]);
Series1.YValues.Value[3]:= strtofloat(StringGrid1.Cells[2,i]);
series1.Active := true;
end;
end;

cantador

jeudi 13 décembre 2007 à 18:25:09 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

cantador

Membre Club
désolé j'ai dérapé :

procedure TForm1.Chart1BeforeDrawSeries(Sender: TObject);
var
    i : integer;
begin
series1.Active := false;
 for i:=0 (ComboBox1.Items.Count - 1) do
do
begin
series1.XValues.Value[0] := strtofloat(StringGrid1.Cells[1,i]);
Series1.YValues.Value[3]:= strtofloat(StringGrid1.Cells[2,i]);
series1.Active := true;
end;
end;

nb : mets les series en manuel

cantador

jeudi 13 décembre 2007 à 18:29:32 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

cantador

Membre Club
Je vais y arriver..

procedure TForm1.Chart1BeforeDrawSeries(Sender: TObject);
var
    i : integer;
begin
series1.Active := false;
 for i:=0 (ComboBox1.Items.Count - 1) do
begin
series1.XValues.Value[i] := strtofloat(StringGrid1.Cells[1,i]);
Series1.YValues.Value[i]:= strtofloat(StringGrid1.Cells[2,i]);
series1.Active := true;
end;
end;


cantador

jeudi 13 décembre 2007 à 18:32:12 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

cantador

Membre Club
Cette fois-ci , c'est la bonne !

procedure TForm1.Chart1BeforeDrawSeries(Sender: TObject);
var
    i : integer;
begin
series1.Active := false;
 for i:=0 (ComboBox1.Items.Count - 1) do
begin
series1.XValues.Value[i] := strtofloat(StringGrid1.Cells[1,i]);
Series1.YValues.Value[i]:= strtofloat(StringGrid1.Cells[2,i]);
end;
series1.Active := true;
end;

çà marche ?

cantador

vendredi 14 décembre 2007 à 09:29:19 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

Loda

Membre Club
salut,

rapidement quelques points:
- met ton code dans une methode que tu appel depuis un bouton ou autres. Pas dans l'event Chart1BeforeDrawSeries. (à moins que tu veuilles que les données soit retransferée avant chanque repaint() . bonjour les performance....)

sinon, je ne suis pas sur que "XValues.Value[i]" fonctionne si ta serie est vide.... essaie avec (pas testé)

procedure TForm1.LoadGrilleToChart;
var
    i : integer;
begin
series1.BeginUpdate;
series1.clear; //efface ancien points
try
for i:=0 (ComboBox1.Items.Count - 1) do
begin
  series1.AddXY(strtofloat(StringGrid1.Cells[1,i]), strtofloat(StringGrid1.Cells[2,i]));
 // ou AddY si t'as juste une "list" de valeur.
end;
finally
series1.endupdate;
end;//try

end;

sinon, as-tu regarder les sources suivantes? Elles peuvent peut-être t'aider...

bon code,

Loda

Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.

vendredi 14 décembre 2007 à 11:52:02 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

edlain


Bonjour,

Je vous remercie pour les informations; dans tous les cas, je les testerais et vous tiendrait informé.

Bonne journée.

samedi 15 décembre 2007 à 11:28:41 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

cantador

Membre Club
@edlain :
C'est sympa merci..
Il m'a fallut 5' pour tester le truc..et toi tu vas nous donner de tes nouvelles en 2008..
n'est-ce pas ?

et avec un avatar svp..

cantador

lundi 17 décembre 2007 à 12:07:19 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

edlain

Bonjour,

Excuse moi, je n'ai pas repondu de suite car je n'ai pas de connexion chez moi en ce moment.
Mais en utilisant ton code, les points ne s'affichent toujours pas sur le Tchart; Par contre, quand j'utilise AddXY en entrant des vrais valeurs a i, j'arrive à tracer la ligne.
Par contre en utilisant une boucle avec : series1.AddXY(strtofloat(StringGrid1.Cells[1,i]), strtofloat(StringGrid1.Cells[2,i]));
j'ai un message d'erreur qui me dit que j'ai un problème avec des virgules flottantes.

bon début de semaine. 


lundi 17 décembre 2007 à 13:15:38 | Re : Comment afficher des données issues d'une grille dans un graphe en Delphi?

cantador

Membre Club

"j'ai un message d'erreur qui me dit que j'ai un problème avec des virgules flottantes."
çà vient vraisemblablement du séparateur décimal :
il faut le fixer dès le départ..

initialization
  DecimalSeparator := '.';
ou := ','; selon la configuration choisie dans ton panneau de configuration

un petit test :
    DecimalSeparator := '.';
    test := StrToFloat('4.03');
    showmessage(floatToStr(test));

il faudra aussi faire attention comment présenter les données dans l'écriture :

series1.XValues.Value[i] := ??????

Mais tu devrais t'en sortir..

cantador



1 2

Cette discussion est classé dans : graphe, données, grille, afficher, issues


Répondre à ce message

Sujets en rapport avec ce message

Grille en delphi [ par furax13 ] bonjour,je dois développer en delphi une interface pour une dizaine de fichiers csv.Pour accélerer le développement de l'IHM, j'aimerai afficher toute DBGRID avec hierarchie comme un treeview [ par richarddum ] salut, Je voudrais pouvoir hérarchiser les données comme sur un treeview, avec une case + - pour afficher ou cacher les données enfants. Quelqu'un c Thumbnail dans les JPEG [ par ricrak ] Les fichiers JPEG issus des appareils photos numériques incorporent des données "EXIF" concernant les conditions de prises de vue (date, focale, vites Probleme d affichage QREPORT [ par fguerite26 ] Bonjour,je voudrais afficher mes données dans mes pages qreport par bloc. C est à dire, q des blocs de données ne soient pas coupés en deux, sur deux Afficher tout les données d'un champs dans un stringgrid ou dans une variable???? [ par Gokuan ] Hello, alors voilà, je suis bloqué et c'est assez urgent... J'ai une base MYSQL, et lorsque je fais une requete pour séléctionner tout les données d'u Afficher un graphe en fonction de X et Y [ par Zaydoun_391 ] Salut je suis a la recherche d' une méthode simple pour afficher un graphe en fonction de deux variabe X et Y . Mon projet sert de présenter l'allure Comment utiliser une Base de données [ par coco59211 ] Salut à tous, je voudrais juste savoir quels composants mettre et ou definir où se trouve ma base de données afin de l'utiliser. Jusqu'à maintenant je application avec base de données [ par fouroulou ] Bonjour tout le monde,Voilà je suis un instituteur ayant des connaissances modestes en programmation.Je voudrais réaliser une application pour mon éco Base de données - delphi 6 version personelle [ par nou366 ] Bonjour, Je suis débutant en delphi, je viens de télécharger la version personelle delphi 6, mais apparemment il manque pas mal de composant, dont cel requete post avec TnmHttp [ par waxpie34 ] Bonjour a tousC est la premiere fois que je pose une question sur ce forum mais il m a deja aidé a plusieurs reprises a resoudre mes problemes.Voila m


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.