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

VB 6 et antérieur Discussion :

MSCHART axe des abscisses temporel


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Novembre 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 2
    Par défaut MSCHART axe des abscisses temporel
    Bonjour à tous, je développe un projet au boulot qui m'affiche dans un listview les résultats trouvés dans une base de données type ACCESS. De ce côté là pas de soucis, tout s'affiche comme il faut.

    Le hic vient après quand je veux mettre mes valeurs dans un graphique MSChart. Mon axe des abscisses comporte des dates, mais je ne trouve pas comment faire pour que le graphique prenne en compte l'écart de temps entre chaque date, au lieu de me mettre bêtement les points les uns après les autres avec toujours le même espace. En espérant bien entendu que ça soit possible !

    Merci d'avance

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Une piste...
    Transformer tes dates en DateSerial, tu aurais ainsi des nombres que tu pourrais manipuler.
    A+

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Novembre 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 2
    Par défaut
    Hmmmm .... D'abord merci pour la réponse

    Après ben j'ai bien essayé de faire un CDate de ma date (qui est au format jj/mm/aaaa dans ma base de données), et j'avais mes dates sous un format du genre 35084... Mais ça n'a rien changé

    Je vais voir du côté des DateSerial, mais si en attendant tu pouvais développer un petit peu car j'avoue que je ne vois pas ce que c'est du tout

    Merci !


    EDIT : je vous rajoute le code utilisé (du moins seulement la partie intéressante )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    ' Toutes mes déclarations et mes initialisations (graphe entre autres)
     
    Set monRec = maConnexion.OpenRecordset("SELECT * FROM perfos WHERE numero=" & numero & " AND type='" & type_recherche & "' ORDER BY date ASC;")
    nb_resultats = monRec.RecordCount
     
    ' nombre de points pour le graphe
    form_recherche.MSChart1.RowCount = nb_resultats
     
    If nb_resultats > 0 Then
     
        Do While Not monRec.EOF
     
            ' insertion dans l'objet ListView
            Set l_item = form_recherche.liste.ListItems.Add(, , "")
            l_item.SubItems(1) = monRec("id")
            l_item.SubItems(2) = monRec("date")
            l_item.SubItems(3) = monRec("val_pmin")
            l_item.SubItems(4) = monRec("val_pmax")
     
            ' acutalisation du graphe
            form_recherche.MSChart1.Row = i
            form_recherche.MSChart1.RowLabel = monRec("date")
            form_recherche.MSChart1.Column = 1
            form_recherche.MSChart1.data = monRec("val_pmin")
            form_recherche.MSChart1.Column = 2
            form_recherche.MSChart1.data = monRec("val_pmax")
     
            ' enregistrement suivant
            monRec.MoveNext
     
        Loop
     
    End If
    Est-ce que au moins je suis sur la bonne piste ?

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Il y a longtemps que je ne me suis plus servi d'un graph en VB6, mais il me semble que tu ne détermine pas la plage d'affichage, de ce fait, l'affichage se fait à partir de 0. Si par ex toutes des data sont entre 30100 et 30200 tu va avoir une ligne droite et le graph ne voudra rien dire.
    Je vient de contrôlé et ca commence bien à 0. De plus, dans l'aide il conseil d'employer un tableau...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub Form_Load()
        Dim arrData(3, 1 To 3)
        arrData(1, 1) = "jan"   ' Définit les étiquettes de la
                               ' première série.
        arrData(2, 1) = "fév"
        arrData(3, 1) = "mar"
     
        arrData(1, 2) = 8
        arrData(2, 2) = 4
        arrData(3, 2) = 0,3
     
        arrData(1, 3) = 0.2
        arrData(2, 3) = 3
        arrData(3, 3) = 6.3
        MSChart1.ChartData = arrData
    End Sub
    Et contrairement au Graph de VBA je n'ai pas trouvé de propriété permettant de déterminer l'échelle, c'est donc les valeurs qu'il faut adapter.
    A+

Discussions similaires

  1. [Artichow] Afficher axes des abscisse quand le graph ne commence pas à 0
    Par dark_vidor dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 02/06/2009, 12h20
  2. Réponses: 1
    Dernier message: 14/06/2007, 21h37
  3. Réponses: 1
    Dernier message: 24/05/2007, 16h02
  4. definir manuellement le pas de l'axe des abscisses
    Par developpeur82 dans le forum MATLAB
    Réponses: 1
    Dernier message: 03/04/2007, 12h26
  5. [JpGraph] Problème avec l'axe des abscisses ?
    Par MaTHieU_ dans le forum Bibliothèques et frameworks
    Réponses: 15
    Dernier message: 19/07/2006, 21h23

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