1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 290
    Points : 96
    Points
    96

    Par défaut ouvrir,visualiser et exploiter un fichier .mat

    Bonjour,
    J'ai un fichier .mat dont je connais la structure et que je voudrais visualiser sur des plot.
    J'ai exploré plusieurs pistes mais je ne trouve pas d'exemple pour avancer
    J'ai essayé la fonction matfile2sci qui m'a permis de le convertir en un fichier binaire dont je ne sais pas comment exploiter les informations.
    J'ai essayé avec ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    PathFileName=uigetfile(["*.mat"]);
    fd = matfile_open(PathFileName);
    [name, classes, types]=matfile_listvar(fd)
    matfile_close(fd);
    loadmatfile(PathFileName);
     
     
    for i=1:size(name,"*") do
    disp("The variable " + name(i) + " has type " + string(types(i)) + " and class " + string(classes(i)))
    end
    qui me permet de charger le fichier mais je ne sais pas comment récupérer les données lues.

    J'ai l'habitude de lire des .csv via un csvRead mais là je suis un peu perdu car le navigateur de variables est presque vide après avoir chargé le fichier Matlab.

    Merci pour votre aide

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Consultant R&D - Mécatronique - MATLAB/Scilab
    Inscrit en
    novembre 2006
    Messages
    19 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant R&D - Mécatronique - MATLAB/Scilab
    Secteur : Santé

    Informations forums :
    Inscription : novembre 2006
    Messages : 19 227
    Points : 53 625
    Points
    53 625

    Par défaut

    Pourrais-tu nous fournir un de ces fichiers (compressé en zip ou rar) ?
    Sur mon blog : Afficher une photo avec la bonne orientation dans MATLAB

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

    « And the drip and the drip and the drip of the Mississippi cryin' - And Saint Huck hears his own Mississippi just rollin' by him » (Saint Huck)

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 290
    Points : 96
    Points
    96

    Par défaut

    J'adore Calvin et Hobbes (j'ai tous les albums)
    Voila un exemple de fichier Essai.zip

    Merci

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Consultant R&D - Mécatronique - MATLAB/Scilab
    Inscrit en
    novembre 2006
    Messages
    19 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant R&D - Mécatronique - MATLAB/Scilab
    Secteur : Santé

    Informations forums :
    Inscription : novembre 2006
    Messages : 19 227
    Points : 53 625
    Points
    53 625

    Par défaut

    Tu obtiens une structure (comme avec MATLAB) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    --> loadmatfile('Essai.mat')
     
    --> data
     data  = 
     
      version: [1x1 string]
      signals: [1x1 struct]
    Où se situe le problème ?
    Sur mon blog : Afficher une photo avec la bonne orientation dans MATLAB

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

    « And the drip and the drip and the drip of the Mississippi cryin' - And Saint Huck hears his own Mississippi just rollin' by him » (Saint Huck)

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 290
    Points : 96
    Points
    96

    Par défaut

    Dans la structure il y a 24 variables et je ne sais pas comment les récupérer.
    Par exemple comment afficher la variable TIME

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Consultant R&D - Mécatronique - MATLAB/Scilab
    Inscrit en
    novembre 2006
    Messages
    19 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant R&D - Mécatronique - MATLAB/Scilab
    Secteur : Santé

    Informations forums :
    Inscription : novembre 2006
    Messages : 19 227
    Points : 53 625
    Points
    53 625

    Par défaut

    Comme ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    --> data.signals.labels{5}
     ans  =
     
     TIME
    Sur mon blog : Afficher une photo avec la bonne orientation dans MATLAB

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

    « And the drip and the drip and the drip of the Mississippi cryin' - And Saint Huck hears his own Mississippi just rollin' by him » (Saint Huck)

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 290
    Points : 96
    Points
    96

    Par défaut

    Je voulais dire comment je plot les données associées à TIME
    comment tu listes les variables avec leur pointeur associé ?
    Pour moi TIME devrait être à 0 et non à 5

  8. #8
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Consultant R&D - Mécatronique - MATLAB/Scilab
    Inscrit en
    novembre 2006
    Messages
    19 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant R&D - Mécatronique - MATLAB/Scilab
    Secteur : Santé

    Informations forums :
    Inscription : novembre 2006
    Messages : 19 227
    Points : 53 625
    Points
    53 625

    Par défaut

    Citation Envoyé par sdecorme Voir le message
    Pour moi TIME devrait être à 0 et non à 5
    Pourrais-tu nous expliquer un peu plus ?
    Sur mon blog : Afficher une photo avec la bonne orientation dans MATLAB

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

    « And the drip and the drip and the drip of the Mississippi cryin' - And Saint Huck hears his own Mississippi just rollin' by him » (Saint Huck)

  9. #9
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 290
    Points : 96
    Points
    96

    Par défaut

    J'ai un descriptif de la structure et pour moi TIME est en première position donc pour moi si je veux atteindre les données associées à TIME je pensais avoir un code du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    data.signals.labels{0}.value
    [edit]
    Je viens de voir ce que tu veux dire , en fait les données ne sont pas rangées dans l'ordre que je pensais
    data.signals.labels
    En effet TIME est bien à la 5eme position
    Par contre comment je récupère les valeurs pour les exploiter si je fais
    data.signals.values[5]
    j'ai une erreur faut-il utiliser un tableau en 2D?
    data.signals.values[5][i]
    Merci

  10. #10
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Consultant R&D - Mécatronique - MATLAB/Scilab
    Inscrit en
    novembre 2006
    Messages
    19 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant R&D - Mécatronique - MATLAB/Scilab
    Secteur : Santé

    Informations forums :
    Inscription : novembre 2006
    Messages : 19 227
    Points : 53 625
    Points
    53 625

    Par défaut

    Comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    data.signals.values(:,5)
    Où de façon plus automatique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for n = 1:size(data.signals.labels, "r")
        if strcmp(data.signals.labels{n}, 'TIME')==0 then
            break
        end
    end
     
    data.signals.values(:,n)
    Sur mon blog : Afficher une photo avec la bonne orientation dans MATLAB

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

    « And the drip and the drip and the drip of the Mississippi cryin' - And Saint Huck hears his own Mississippi just rollin' by him » (Saint Huck)

Discussions similaires

  1. ouvrir a partir d'un fichier.mat
    Par nemsz dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 13/04/2012, 11h02
  2. [Débutant] Ouvrir un fichier .mat
    Par oualinassim dans le forum Signal
    Réponses: 1
    Dernier message: 29/12/2010, 10h29
  3. ouvrir un fichier .mat a partir d'un bouton
    Par fleurrouge dans le forum Interfaces Graphiques
    Réponses: 12
    Dernier message: 10/06/2009, 20h07
  4. Ouvrir/Visualiser un Fichier
    Par mourbare dans le forum Linux
    Réponses: 6
    Dernier message: 13/02/2009, 11h40
  5. Ouvrir et exploiter un fichier Archive
    Par cwamm dans le forum Bibliothèques
    Réponses: 4
    Dernier message: 05/12/2006, 20h48

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