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

Qwt Discussion :

Dates sur l'axe des absisses


Sujet :

Qwt

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 88
    Points
    88
    Par défaut Dates sur l'axe des absisses
    Bonjour,

    Je voulais savoir si il était possible de mettre, sur l'axe des absisses d'un QwtPlot, des dates (QDateTime) au lieu des int ???

    Merci

  2. #2
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 88
    Points
    88
    Par défaut
    Solution trouvée !!

    Pour ceux que ça interesse :

    il faut reimplémenter la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    virtual QwtText label(double v) const
    afin qu'elle retourne un QwtText composé de date.

    dans le header de votre graphe ajoutez la classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class TimeScaleDraw: public QwtScaleDraw
    {
    	virtual QwtText label(double v) const    
    	{		
    		QDateTime t = QDateTime::fromTime_t((int)v);	//cf fromTime_t	
    		return t.toString("dd/MM/yyyy");    
    	}
    }
    dans le .cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    myPlot->setAxisScaleDraw(QwtPlot::xBottom, new TimeScaleDraw());
    myPlot->setAxisScale(QwtPlot::xBottom, min, max);
    myPlot est un QwtPlot,
    min est un double référençant le nombre de sec entre la date 01/01/1970 et la date minimale de votre graphe,
    max est un double référençant le nombre de sec entre la date 01/01/1970 et la date maxmimale de votre graphe.


  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 93
    Points : 63
    Points
    63
    Par défaut
    Merci tu m'as sauvé, surtout que je trouvais très peu d'information à ce sujet !

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

Discussions similaires

  1. Msgraph avec dates sur l'axe des Y
    Par Maroxye dans le forum VBA Access
    Réponses: 0
    Dernier message: 21/12/2007, 18h01
  2. Réponses: 2
    Dernier message: 19/12/2007, 17h25
  3. Réponses: 1
    Dernier message: 14/06/2007, 21h37
  4. Réponses: 1
    Dernier message: 24/05/2007, 16h02
  5. [excel]échelle log sur l'axe des X
    Par breizhou dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 19/07/2006, 17h49

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