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

MATLAB Discussion :

Lire un ensemble de fichier de données puis plotter


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 13
    Par défaut Lire un ensemble de fichier de données puis plotter
    Dear all,

    Je vous prie de jeter un coup d'oeil a ceci:

    Je dispose par exemple des fichiers:
    \Repertoire1\fichier_1
    \Repertoire2\fichier_2
    \Repertoire3\fichier_3
    .....
    \Repertoiren\fichier_n

    Le format de mes fichiers est tel que le peux faire:
    load fichier_i et contour (fichier_i) sans problème.

    Ma question est de savoir comment lire successivement fichier_i et
    sauvegarder chacune des images (n pouvant être assez grand).

    quelque chose de la forme


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    nframes = n;              % number of frames in the movie
    Frames = moviein(nframes); % initialize the matrix 'Frames'
     for j=1:n
     % pouvoir charger fichier_i
    % faire contour (fichier_i)
    % sauvegarder l'image 
     F(:,j)=getframe
     end
     movie(Frames) %generer une animation.
    ou toute autre proposition sera la bienvenue.

    Merci davance

    Jessica

  2. #2
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Regarde déjà la pour lire successivement tes fichiers :
    Comment nommer une suite de fichiers : nom_1.ext, nom_2.ext... nom_N.ext ?

    Et adapte-la à ton problème.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2007
    Messages : 36
    Par défaut
    les fonctions qui comptent sont dir et print.
    dir te permets d'obtenir une structure qui a un repertoire donnéte donne la liste des noms de fichiers, tailles etc. print imprime dans un fichier, ici un pdf
    En gros tu reccupères tes fichiers avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Repertoire=dir('NomDuRepertoire')
    ensuite tu fait le tri avec strcmp ou (strncmp):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for i=1:size(Repertoire,1)
    if(strcmp(Repertoire(i).name,'NomDeFichierVoulu',n)
    ...tu bosses sur tes images...
    print('-dpdf','NomDeFichierDeSortie')

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 13
    Par défaut lire une serie de fichiers et plotter (Contour)
    Chèr(e) Loique,
    je te remercie de ta reponse.

    dans ton code, sauf mauvaise interpretation de ma part, cette section

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(strcmp(Repertoire(i).name,'NomDeFichierVoulu',n)
    devrait comparer la chaine de caractere Repertoire(i).name et NomDeFichierVoulu.

    Je suis un peu plus confuse car je ne comprends pas comment le code fera automatiquement la lecture successive de fichier1 (ou data1), fichier2 (ou data2) , et fera successivement contour(data(i))

    Merci de rejetter un coup d'oeil.

    Jessica

  5. #5
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Quel est le problème avec l'exemple de la FAQ (et celui juste avant aussi) ?

    Sinon, je ne vois pas très bien pourquoi tu utiliserais la solution avec STRCMP ici. Il n'y a aucun intérêt dans ton cas précis.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 13
    Par défaut lire une serie de fichiers et plotter (Contour)
    Dear all,

    A present, mon progamme suivant marche:
    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
    clear all
    a=20;
    reruns=1;                  % number of times movie is to play
     fps=1;                     % frames per second
    nframes = 300;              % number of frames in the movie
     Frames = moviein(nframes)
    for i=1:300
     (eval(['load data',num2str(i)]));
     B= (eval(['data',num2str(i)]));
     A=size(B);
     x=linspace(-a,a,A(1));
    y=linspace(-a,a,A(2));
     contour(y,x,B) ;
     F(:,131)=getframe
     movie(Frames,reruns,fps)
    end
    Question1:
    quelle commande matlab utiliser pour sauvegarder la video en un format que je pourrai par la suite inclure dans un fichier pdf ou ppt?

    Question 2:
    mes données se trouvent en fait dans des repertoires du type:

    Re.0000000\data.y
    Re.0000100\data.y
    Re.0000200\data.y
    Re.0000300\data.y
    ...
    ...
    Re.0035000\data.y

    Pour faire tourner mon programme ci-dessus, Je suis obligee de faire

    cp -i Re.0000000\data.y NEWFILE\data1
    cp -i Re.0000100\data.y NEWFILE\data2
    cp -i Re.0000200\data.y NEWFILE\data3
    .....
    cp -i Re.0035000\data.y NEWFILE\data351

    Soit, 351 fois pour data.y ; data.x et data.z et il y'a d'autre types de data.

    Quelqu'un(e) pourra t'il (elle) m'aider avec un boucle pour contourner cette difficulté?
    Merci davance
    Jessica

Discussions similaires

  1. lire écrire un fichier de donnée
    Par Ladgalen dans le forum Calcul scientifique
    Réponses: 13
    Dernier message: 05/10/2009, 21h13
  2. Lire un fichier de donnée en utilisant des variables
    Par mehdichess74 dans le forum VB.NET
    Réponses: 1
    Dernier message: 14/04/2008, 11h48
  3. [Debutant] Lire et parser un fichier de données ?
    Par mr_samurai dans le forum Débuter
    Réponses: 5
    Dernier message: 18/01/2008, 12h52
  4. Réponses: 25
    Dernier message: 13/09/2007, 14h43

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