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 :

tracer des courbes avec des données dans plusieurs fichiers


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut tracer des courbes avec des données dans plusieurs fichiers
    Bonjour tous le monde
    alors s'il y a quelqu'un qui peut m'aider j'en serai très reconnaissante,
    Je veux tracer des courbes à partir de données dans plusieurs fichiers, ce sont les mêmes grandeurs mais prises à différents temps ce qui donne des tableaux avec des données différentes à chaque fois. Le problème c'est que je ne veux pas recopier toutes mes données dans un seul fichier, est ce qu'il y a une instruction que je peux utiliser et qui peut faire appel à des données dans des fichiers différents et les tracer dans la même courbe? Merci .

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2014
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 109
    Points : 151
    Points
    151
    Par défaut
    La réponse à a ta question est oui. Tu peux faire appel à autant de fichier que tu veux et même le faire automatiquement. Tu pourras également tout tracer sur le même graphe.

    La fonction load va t'aider à faire ce que tu souhaites. Seulement, pour pouvoir mieux t'aider il faudrait que tu nous renseignes sur le format de tes fichiers

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Merci pour votre réponse mes fichiers sont en format .txt.

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2014
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 109
    Points : 151
    Points
    151
    Par défaut
    ok dans c'est encore plus simple.

    Soit une liste de fichier : f1.txt, f2.txt et f3.txt.

    Je vais aussi supposer que tes fichiers sont organisés en colonne.

    Dans un premier temps tu souhaites tracer la colonne 2 en fonction de la colonne 1 pour les trois fichiers.

    Nous allons faire cela de façon automatique. Pour cela nous allons utiliser des cellules (c'est comme un tableau).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    % Création de la variable pour le lecture automatique
    fichier={'f1.txt','f2.txt','f3.txt'} % fichier est une cellule contenant tout les fichier que tu veux ouvrir
    % Déclaration des cellules directement avec la bonne taille
    A=cell(1,numel(fichier));
    B=cell(1,numel(fichier));
    % Ecriture de la boucle qui va lire et assigner les variables
    for i=1:numel(fichier)
         temp=cell2mat(fichier(i)); % retour à une matrice pour pouvoir utiliser la fonction load
         load temp
         A{i}=temp(:,1) % On assigne à l'élément i de la cellule la colonne 1 du fichier numéro i
         B{i}=temp(:,2) % On assigne à l'élément i de la cellule la colonne 2 du fichier numéro i
    end
    Maintenant que tu as chargé toutes les données tu vas pouvoir les tracer avec des symboles et des couleurs différentes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    % Déclaration d'un palette de couleur matlab
    CM=jet(numel(fichier)) % numel(fichier) correspond au nombre de couleur dont tu as besoin
    % Déclaration de la cellule contenant les markers
    markers={'o','x','s'} 
    % tracer de la figure
    fig=figure('Name','Figure comparative','NumberTitle','off');
    for i=1:numel(fichier)
          plot(cell2mat(A(i)),cell2mat(B(i),markers{mod(numel(manipe),numel(markers))+i},'color',CM(i,:))
          hold('on')
    end

  5. #5
    Membre à l'essai
    Inscrit en
    Novembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Merci infiniment
    je vais essayer ce code avec mes fichiers.

Discussions similaires

  1. [XL-2010] Recherche données dans plusieurs fichiers XLS avec argument
    Par gregory.d dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 13/08/2014, 14h34
  2. Réponses: 0
    Dernier message: 09/07/2014, 10h37
  3. Réponses: 3
    Dernier message: 18/06/2014, 10h44
  4. Réponses: 0
    Dernier message: 02/02/2011, 14h55
  5. [RegEx] remplacer des données dans plusieurs fichiers
    Par sam01 dans le forum Langage
    Réponses: 3
    Dernier message: 11/12/2007, 14h03

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