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

ODS et reporting Discussion :

SAS 9.3 : Noms des points sur le graphique en VERTICAL


Sujet :

ODS et reporting

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 40
    Points : 14
    Points
    14
    Par défaut SAS 9.3 : Noms des points sur le graphique en VERTICAL
    Bonjour à tous

    je suis sous SAS 9.3.
    j'ai une variable X, que je souhaite représenter graphiquement. Y-a-t-il une option sous la PROC GPLOT qui précise qu'on est en dimension 1 ? car j'ai dû créer une variable Y toujours nulle et taper "plot Y*X;" pour obtenir ce que je voulais...

    Surtout vu que mes points sur l'axe sont très rapprochés, je voulais mettre le nom des points de manière verticale ? (en horizontal on ne lit presque rien car les noms se chevauchent) comme cela :
    V
    a
    r
    i
    a
    b
    l
    e
    1

    Car au niveau de l'emplacement, malgré mes recherches, je n'ai trouvé que l'option "position=" mais elle ne déplace le texte que de manière horizontale (aligné à droite/gauche ou centré)...

    Je vous remercie par avance pour votre aide

    ps : je ne sais pas si j'ai posté ma question dans le bon tutoriel, mais je n'arrive pas à le changer de place. désolé.

  2. #2
    Rédacteur

    Homme Profil pro
    SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Inscrit en
    Avril 2009
    Messages
    2 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2009
    Messages : 2 497
    Points : 6 064
    Points
    6 064
    Par défaut
    un graphique à deux+ dimensions. tu peux créer une représentation avec une autre variable fictive.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    data class;
    set sashelp.class;
    n= _n_;
    run;
     
    proc gplot data=class ;
    plot weight*n;
    run;
    pour modifier le sens des valeurs dans un graphique, tu ajoutes une option dans AXIS1 par exemple : VALUE=(ANGLE=90)

    ou bien tu utilises l'étape XAXIS dans le cas d'une SGPLOT.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 40
    Points : 14
    Points
    14
    Par défaut
    merci pour ta réponse datametric

    Tout d'abord, si j'utilise une variable fictive : SAS me dit "variable inconnue" et ça beuge (je n'ai sûrement pas bien compris ce que tu voulais me dire).

    Ensuite, j'ai ajouté l'option "value=" dans axis1, ça modifie les graduations des abscisses, mais en fait ce sont les noms (/légendes) des variables projetées sur mon axe surquels je veux effectuer une rotation de 90°. J'ai ajouté une image pour essayer d'être plus explicite.

    Merci par avance pour votre aide
    Images attachées Images attachées  

  4. #4
    Rédacteur

    Homme Profil pro
    SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Inscrit en
    Avril 2009
    Messages
    2 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2009
    Messages : 2 497
    Points : 6 064
    Points
    6 064
    Par défaut
    Mon exemple montre que je crée n avant de l'utiliser.

    Pour ton affichage des libellés des points, il faut faire une annotate ou bien travailler avec la SGPLOT de la 9.3 et l'option DATALABEL.
    elle semble gérer ce genre de problème mais il faut tester ("The label positions are automatically adjusted to prevent the labels from colliding with other labels and other arrows").


    http://support.sas.com/documentation...9qaxrn0d1m.htm

    Autrement, il y en a un ou deux ici qui ont la 9.2/9.3 donc n'hésite pas à poster un bout de code et de données pour que l'on puisse faire des tests si tu bloques après.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 40
    Points : 14
    Points
    14
    Par défaut
    merci pour ton aide datametric!

    La variable 'n' est créée, mais au sujet de 'weight'? c'est une variable système ou fictive (si oui comment se fait-il que SAS n'indique pas "valeur inconnue"?), quelles sont ses valeurs ?

    Sinon pour les étiquettes, j'ai réussi avec avec la SGPLOT de la 9.3. et l'option DATALABEL, voici la syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    proc sgplot data=donnees; /* le tableau contient entre autres les variables X, Y et Region */
    scatter x=X y=Y / datalabel=Region group=Region /* chaque région sera representée par une couleur différente */; 
    run;
    Le résultat est en pièce jointe.
    J'ai dû rajouter des couleurs, car mes points sont très regroupés et on ne distinguait pas très bien à quel point correspondait telle étiquette.

    Avant de poster ma question, je travaillais avec GPLOT et l'option ANNOTATE=données. J'avais crée 'données' avec une étape DATA pour embellir le rendu du graphique, et je n'avais pas trouvé l'option qui traite le chevauchement des étiquettes, je serai intéressée de savoir si elle existe.
    En effet, je n'ai trouvé que l'option "position=" qui déplace le texte de manière horizontale (aligné à droite/gauche ou centré), ce qui ne suffit pas dans mon cas, même si je fais du cas par cas pour chaque point.

    merci par avance pour votre aide.
    Images attachées Images attachées  

  6. #6
    Rédacteur

    Homme Profil pro
    SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Inscrit en
    Avril 2009
    Messages
    2 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : SAS ALLIANCE SILVER. Consultant et formateur SAS et Cognos.
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2009
    Messages : 2 497
    Points : 6 064
    Points
    6 064
    Par défaut
    Effectivement GPLOT avait besoin de POSITION= mais la version moderne de tout ceci est bien SGPLOT et je suis ravi de voir que tu as vite actualisée tes connaissances et que cela réponde à ton besoin.


  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 40
    Points : 14
    Points
    14
    Par défaut
    encore merci datametric

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

Discussions similaires

  1. [Débutant] Ajouter des points sur un graphique
    Par Blugeer dans le forum VB.NET
    Réponses: 4
    Dernier message: 22/05/2012, 14h47
  2. [XL-2000] Recupérer le libellé des "Points" sur un graphique
    Par LouiMz dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/07/2011, 16h57
  3. Recupérer le libellé des "Points" sur un graphique
    Par statista dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/07/2011, 13h28
  4. Réponses: 2
    Dernier message: 09/10/2010, 11h19
  5. Réponses: 2
    Dernier message: 20/08/2004, 17h10

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