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

R Discussion :

Tracer des Courbes Polynomiales


Sujet :

R

  1. #1
    Membre averti
    Inscrit en
    Juillet 2012
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2012
    Messages : 17
    Par défaut Tracer des Courbes Polynomiales
    Bonjour à tous,

    Voilà, je souhaiterais tracer une courbe de Bézier (ou polynomiale) avec R.
    Voici un lien sur ce que c'est pour les personnes comme moi qui n'en savait rien : http://fr.wikipedia.org/wiki/Courbe_de_Bézier

    En gros, ce que je souhaite faire c'est, à partir de 3 points par exemple, tracer une courbe qui ne passe ni par tous les points, ni qui soit une droite, mais plutôt une courbe "moyenne".

    Je n'ai pas réussi à trouver de solutions qui marchent sur internet...
    Les density.plot ce n'est même pas la peine, j'ai aussi trouvé une fonction qui "lisse" une courbe, mais ça ne donne pas exactement ce que je souhaite...

    Est-ce que quelqu'un a une idée ?


    Merci :-)

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2013
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 18
    Par défaut
    Bonjour,

    j'ai aussi trouvé une fonction qui "lisse" une courbe
    : Laquelle ?

    As-tu essayé la fonction spline ?

    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
    19
     
    # avant de l'utiliser va voir l'aide de la fonction
    ?spline
     
    # ci-dessous l'exemple tiré de l'aide de la fonction
    op <- par(mfrow = c(2,1), mgp = c(2,.8,0), mar = .1+c(3,3,3,1))
    n <- 9
    x <- 1:n
    y <- rnorm(n)
    plot(x, y, main = paste("spline[fun](.) through", n, "points"))
    lines(spline(x, y))
    lines(spline(x, y, n = 201), col = 2)
     
    y <- (x-6)^2
    plot(x, y, main = "spline(.) -- 3 methods")
    lines(spline(x, y, n = 201), col = 2)
    lines(spline(x, y, n = 201, method = "natural"), col = 3)
    lines(spline(x, y, n = 201, method = "periodic"), col = 4)
    legend(6,25, c("fmm","natural","periodic"), col=2:4, lty=1)
    Est-ce que ça répond à ta question ?

  3. #3
    Membre averti
    Inscrit en
    Juillet 2012
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2012
    Messages : 17
    Par défaut
    Merci pour ta réponse très rapide et claire !

    A vrai dire, la fonction pour lisser n'ayant pas du tout correspondu à mes attentes j'ai fini par l'oublier, donc impossible de te répondre...

    J'aurais une dernière question, le "n" dans : "lines(spline(x, y, n = 201), col = 2)" tu le choisis arbitrairement ou il existe un moyen pour le calculer en fonction de la courbe ? Comme on calculerait une fréquence d'échantillonnage par exemple...


    En tout cas, merci beaucoup !

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2013
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 18
    Par défaut
    Dans l'aide de la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    spline(x, y = NULL, n = 3*length(x), method = "fmm",
                xmin = min(x), xmax = max(x), xout, ties = mean)
     
    ...
     n: if ‘xout’ is left unspecified, interpolation takes place at
              ‘n’ equally spaced points spanning the interval [‘xmin’,
              ‘xmax’].
    ...
    Le diaporama de la présentation d'un cours dispensé à Agrocampus Ouest par David Causeur (Rennes) est disponible sur Internet. Si les explications sont un peu hardues sans le speech, il a tout de même le mérite de dresser un éventail de techniques d'ajustement non paramètriques dont les méthodes de lissage font partie.

    http://math.agrocampus-ouest.fr/infoglueDeliverLive/digitalAssets/31936_NonParam.pdf


    Un deuxième lien dans le même objectif :
    http://wikistat.fr/pdf/st-m-app-non-param.pdf

  5. #5
    Membre averti
    Inscrit en
    Juillet 2012
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2012
    Messages : 17
    Par défaut
    Ok, merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. tracer des courbes en opengl???
    Par jollo dans le forum OpenGL
    Réponses: 10
    Dernier message: 28/02/2013, 09h28
  2. truc pour tracer des courbe en temps reel qvec perl tk
    Par mohaz dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 16/06/2009, 16h48
  3. Tracer des courbes
    Par skywaltitou dans le forum MFC
    Réponses: 5
    Dernier message: 27/03/2007, 15h22
  4. Tracer des courbes - GtkCurve
    Par Ange44 dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 07/08/2006, 14h44
  5. Réponses: 7
    Dernier message: 06/05/2006, 22h51

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