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

Scilab Discussion :

Utilisation d'un Sgrayplot


Sujet :

Scilab

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 12
    Points : 10
    Points
    10
    Par défaut Utilisation d'un Sgrayplot
    Bonjour à tous,

    Je suis confronté à un problème. Je dispose d'un fichier texte dans lequel se trouve des données inscrites sur 4 colonnes. Le nombre de lignes est 5. Je souhaite tracer une représentation graphique avec Sgrayplot. Je veux tracer z=(x,y); les données x, y et z sont issues dudit fichier texte. Je précise qu'il n'y a aucune erreur; de plus, une fenêtre graphique apparaît avec rien dedans. C'est le problème. Auriez-vous quelques suggestions ?
    J'ai essayé différentes combinaisons sur un argument de Sgrayplot, sans succès.

    Voici le contenu du fichier texte :
    0.000000	0.000000	337.107860	941.000000
    0.000000	0.200000	353.300624	1742.000000
    0.000000	0.400000	213.641635	134.000000
    0.000000	0.600000	213.641635	120.000000
    0.000000	0.800000	213.641635	127.000000
    Voici le programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    fd4=mopen('C:\Users\salle_laser\Desktop\ESSAI\résultats_avec_valeurs_en_Y_et_Z_mais_sans_chaîne_de_caractère.txt','rt')
    data=mfscanf(-1,fd4,"%f %f %f %f")
    mclose(fd4)
    y2=zeros(length(data(:,1)),length(data(:,2)))
    y2(:,1)=data(:,4)
    //plot3d(data(:,1),data(:,2),data(:,4),[,,"X@Y@Z"])
    //grayplot(data(:,1),data(:,2),y2,rect=[-20,-20,20,20])
    Sgrayplot(data(:,1),data(:,2),y2,strf='081')
    //xtitle("I = f (périodicité spatiale)","$\text{\lambda (nm)}$","$\text{Intensity (a.u.)}$")**
    mclose("all")

    En vous remerciant.
    Fichiers attachés Fichiers attachés

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Mai 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2016
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    la lecture du fichier texte est OK :
    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
    -->fd4=mopen('essai.txt','rt')
     fd4  =
     
        1.  
     
    -->data=mfscanf(-1,fd4,"%f %f %f %f")
     data  =
     
        0.    0.           337.10785    941.   
        0.    0.2          353.30063    1742.  
        0.    0.4000000    213.64163    134.   
        0.    0.6000000    213.64163    120.   
        0.    0.8000000    213.64163    127.   
     
    -->mclose(fd4)
     ans  =
     
        0.
    mais que veux tu afficher ? Difficile de le savoir précisément en lisant ta question :
    Je veux tracer z=(x,y); les données x, y et z sont issues dudit fichier texte
    En lisant ça on ne peut pas savoir ce qu'est x, y ou z dans ton fichier . J'ai l'impression que ce que tu veux tracer c'est la valeur de z qui correspond à chaque pixel (x,y) avec x=1,2,3,4,5 (numéro de ligne de data) y=1,2,3,4 (numéro de colonne de data). Dans ce cas il faut utiliser Matplot. Mais vu l'amplitude des données tu as intérêt à avoir une table de couleurs très profonde pour différencier les pixels à 0 de ceux ~ 1000 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Matplot(data)
    F=gcf(); // handle de la figure
    F.color_map=jetcolormap(2014)// augmente la taille de la table de couleurs
    si tu veux un exemple plus simple pour Matplot regarde la page d'aide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    help Matplot
    Matplot([1 2 3;4 5 6])

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    X est le vecteur rassemblant les données de la première colonne; Y est le vecteur rassemblant les données de la deuxième colonne et Z est le vecteur rassemblant les données de la quatrième colonne. La troisième colonne n'entre pas en compte.

    En vous remerciant.

Discussions similaires

  1. Utilisation de Sgrayplot
    Par Armengaud dans le forum Scilab
    Réponses: 3
    Dernier message: 02/06/2016, 11h26
  2. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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