IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Ajouter des axes à un TChart


Sujet :

C++Builder

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Par défaut Ajouter des axes à un TChart
    Bonjour à tous,

    Je suis actuellement bloqué sur un TChart.

    Je souhaiterais pouvoir afficher des courbe d'unités différentes (par exemple pression en bar, vitesse en km/h, et couple en Newton).
    J'ai vu la possibilité de mettre un axe à gauche et un axe à droite, mais cela me limite à deux axes.

    J'ajoute, au cas ou, que mes séries sont créées dynamiquement et qu'il m'est difficile d'adapter les valeurs de chaque courbe pour n'avoir qu'un seul axe (entre 0% et 100% par exemple) car ces courbes seront lues par des personnes ignorant l'échelle.

    Merci beaucoup

  2. #2
    Membre confirmé Avatar de bfespi69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 79
    Par défaut
    Salut,

    Est-ce que tes courbes ( de nature différente ) doivent être affichées en même temps sur le graphique ?

    Sinon pour les axes je pense que tu peux en créer dynamiquement et les associer ou non à ton TChart au moment désiré.

    Par exemple tu déclares un TChartAxis ( avec les valeurs de propriétés que tu veux ) et tu l'associes à un axe du TChart.

    Peut-être que quelquechose comme ça pourrait fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TChartAxis* Axe = new TChartAxis(...);

    Graph est de type TChart*

    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Graph->RightAxis = Axe;
    Je suis pas sur que ce soit ce que tu recherches mais j'ai déjà utlisé TChart il ya un certain temps, et j'avais essayé des choses comme celle là.

    A+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Par défaut
    Merci de ton aide.

    Cette méthode permet en effet de gérer dynamiquement les axes, mais lorsque l'on attribut un axe au TChart (avec Chart1->LeftAxis = Axe1), le précédent axe est remplacé par "Axe1".

    J'aurai voulu mettre les deux axes, et même un troisième par la suite.

    J'utilise un TChart version 4 (fournis avec C++Builder6). J'ai cru comprendre que la dernière version (payante, on a rien sans rien) permet de placer plusieurs axes à gauche. Je cherche un moyen de le faire avec la version 4

    Merci

  4. #4
    Membre confirmé Avatar de bfespi69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 79
    Par défaut
    Oui ça le remplace mais tu pourrais très bien le sauvegarder avant de le remplacer.

    Tu peux instancier un(e) liste/tableau d'axes que tu maitrises et que tu affiches au moment propice.

    Par contre je possède TeeChart Pro 4.02 et je n'arrive pas à placer plusieurs axes sur un seul côté. Je peux en placer un en haut, un en bas, un à gauche, un à droite mais pas plusieurs sur un côté, à moins que je ne sache pas faire ...

    Je suis sous C++Builder 5.

    A+

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Par défaut
    J'ai le même problème, je n'arrive à mettre plusieurs axes sur le même cotés.

    L'idée de créer plusieurs axes et de l'afficher au moment propice peut-être une solution si il n'est pas possible d'en mettre plusieurs.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Par défaut
    Trouvé...

    Avec l'aide dispo ici :http://www.steema.com/download/vcl c'est plus facile.

    Il faut :

    Créer dynamiquement ses axes (axe1 = new TChartAxis ...) avec tous leurs paramètres
    Ensuite il faut associer l'axe avec la série qui s'y référencera (Series1->CustomVertAxis = axe1).

    Aller voir dans l'aide du TChart, rubrique Axe, c'est très bien expliqué, même si le code donné n'est pas du C++Builder.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 10/12/2011, 03h03
  2. Réponses: 6
    Dernier message: 07/06/2010, 13h41
  3. afficher les valeurs de l'axe des X sur Tchart
    Par dz_robotix dans le forum C++Builder
    Réponses: 4
    Dernier message: 28/05/2008, 10h45
  4. [VB6] Modification des axes d'un composant Chart
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 21/05/2003, 08h33
  5. Réponses: 1
    Dernier message: 02/01/2003, 12h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo