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 :

Traitement d'un grand nombre de points


Sujet :

MATLAB

  1. #1
    Membre habitué
    Homme Profil pro
    Doctorant en Astrophysique
    Inscrit en
    Mars 2009
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant en Astrophysique
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2009
    Messages : 312
    Points : 176
    Points
    176
    Par défaut Traitement d'un grand nombre de points
    Bonjour.

    Je précise avant toute chose que je ne m'y connais pas du tout en matlab (la syntaxe je veux dire, aucun problème pour ce qui est de la programmation).

    Je cherche à plotter les données d'un fichier, données qui sont en assez grand nombre (50000 points).
    Je commence donc par récupérer les colonnes qui m'intéressent dans un vecteur x et dans un vecteur y.

    Première question : je cherche tout d'abord à retrier mes points en fonction de x.
    Pour l'instant, je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    [xs,xidx]=sort(x);
    for i=1:size(x)
        ys(i)=y(xidx(i));
    end
    N'y aurait-il pas une façon plus simple (et surtout plus rapide) de trier y en fonction de x.

    Ensuite, seconde question : comment faire une "moving average" ou une "moving median" sur tous mes points avant de plotter ?

    Merci beaucoup

  2. #2
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Bonjour,

    Comme souvent dans MATLAB tu peux te passer de la boucle ici:
    Pour faire une moyenne glissante, tu peux utiliser la fonction CONVN ou la fonction FILTER, il y a un exemple dans la doc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    windowSize = 5;
    filter(ones(1,windowSize)/windowSize,1,data)
    Duf
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

Discussions similaires

  1. [Batch] Fichier avec grand nombre de lignes et lenteur de traitement
    Par Aguire_ dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 09/05/2015, 09h10
  2. [PHP 5.4] Traitement d'un (très) grand nombre d'images
    Par julienroux dans le forum Langage
    Réponses: 9
    Dernier message: 16/04/2013, 00h01
  3. Réponses: 4
    Dernier message: 07/08/2008, 13h40
  4. Traitement d'un grand nombre d'enregistrements
    Par elitost dans le forum PL/SQL
    Réponses: 11
    Dernier message: 10/07/2008, 09h28
  5. Traitement d'un grand nombre de champ
    Par k-lendos dans le forum Langage SQL
    Réponses: 8
    Dernier message: 17/03/2004, 15h13

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