[Calc] Courbe tendance polynôme, moyenne mobile, ordonnée

Tout savoir sur les extensions et aller plus loin avec vos suites bureautiques préférées.
Les questions sur la programmation des OXT doivent être postées dans la section Macros située plus bas.

Modérateur : Vilains modOOs

Règles du forum
Cette section est faite pour présenter des extensions visant à améliorer ou ajouter des fonctionnalités.
Vous pouvez commenter ou ajouter des remarques sur l'extension. Mais, si vous avez une question sur l'installation, le fonctionnement ou l'utilisation, vous devez poster dans la section du logiciel où se produit le problème (Writer, Calc, Impress, Draw, Math ou Base).
Si vous désirez publier une extension, merci de contacter un modérateur par MP.
jumbo444
InconditiOOnnel
InconditiOOnnel
Messages : 769
Inscription : 10 mars 2006 12:09
Localisation : Rouen, France

[Calc] Courbe tendance polynôme, moyenne mobile, ordonnée

Message par jumbo444 »

Bonjour,

Je vous présente l'extension CorelPolyGUI qui est également accessible sur le site des extensions de LibreOffice. CorelPolyGUI était "simplement" une interface utilisateur pour la macro CorelPoly de Laurent Godard (ne pas confondre avec FitOOo sur la même page), mais la version 1.0 propose bien plus puisqu'elle reprend toutes les courbes de tendance d'OOo/LibO.
 Ajout : La version la plus récente 1.4 (avec les moyennes mobiles) n'est pour le moment disponible que sur le site des extensions de LibreOffice. 
Objectifs
Il s'agit de répondre à trois demandes d'amélioration sur les courbes de tendance.
  • Tout d'abord l'issue 20819 (35712 pour LibO) concernant l'ajout de régression polynomiale parmi les courbes de tendance (en + des courbes linéaire, exponentielle, logarithmique et puissance). À partir de données Xdata et Ydata, il faut calculer les coefficients a_i tels que :
    Ycalc = somme des ( a_i . Xdata ^i ) soit le plus proche possible des Ydata.
    Par exemple pour une parabole : Ycalc = a0 + a1.Xdata + a2.Xdata^2
  • Ensuite, l'extension permet de faire les calculs pour une régression (linéaire ou polynomiale) avec la possibilité de forcer l'ordonnée à l'origine (issue 34093 pour OOo et issue 40314 pour LibO).
  • Enfin, la version 1.4 inclut les courbes de tendance moyennes mobiles (issue 66819 pour OOo et issue 40315 pour LibO).
La fonction DROITEREG permet de faire ces calculs (cf. l'aide d'OOo) mais son exploitation est loin d'être immédiate. Il s'agit donc de créer ici une interface utilisateur pour obtenir non seulement l'équation de la courbe, mais également le diagramme associé.

:alerte: L'extension ne modifie en rien la boite de dialogue des courbes de tendance. L'extension est "simplement" une interface utilisateur supplémentaire qui peut créer un nouveau graphe ou insérer des courbes dans un graphe existant. Contrairement à l'outil courbe de tendance, les valeurs ou formules des courbes de tendance sont stockées dans la feuille de calcul.

Installation
Comme toute extension :
  • télécharger le fichier sur la page de l'extension ; comme le site d'OOo est souvent en dérangement, il est préférable de le télécharger sur le site des extensions de LibreOffice
  • ouvrir le gestionnaire d'extension par le menu Outils > Gestionnaire des extensions d'OOo/LibO
  • cliquer sur le bouton Ajouter et sélectionner le fichier
  • quand l'installation est finie, fermer toutes les fenêtres OOo/LibO ainsi que le démarrage rapide
  • relancer OOo/LibO
Utilisation
 Ajout : Les captures d'écran actualisées pour la version 1.4. 
Vous avez besoin dans la même feuille de calcul des valeurs Xdata et Ydata. De plus, celles-ci doivent démarrer de la même ligne. Le plus simple est que les valeurs soient dans deux colonnes successives sur les mêmes lignes tel que cette capture d'écran :
FR_Calc_HT-CorelPoly_Data.PNG
Lancez CorelPolyGUI par le menu Outils > Add-ons > Régression polynomiale.

Lors de la première utilisation, un fichier de configuration est créé. Validez le message, puis l'interface utilisateur s'ouvre.
FR_Calc_HT-CorelPoly_Entree-Paramètres-Sorties.png
  • Sélectionnez la zone des Xdata, sans sélectionner le titre puis cliquez sur (1)
  • La zone des Y est automatiquement remplie en décalant d'une colonne. Si elle n'est pas correcte, sélectionnez la zone, puis corrigez la à l'aide du bouton similaire. Le nom de la feuille n'est pas modifiable.
  • La partie (2) Méthode permet de spécifier la modélisation employée :
    • polynôme : c'est l'apport majeur de l'extension : la régression polynomiale
    • à base linéaire : reprend les régressions des courbes de tendance : ce sont les mêmes méthodes que pour les courbes de tendance des diagrammes, sauf l'ajout de l'exponentiel de a. Notez également que a et b n'ont pas toujours la même signification que dans les courbes de tendance des diagrammes :
      • a.x+b linéaire,
      • a.ln(x)+b logarithmique,
      • exp(a.x).b ou a^x.b exponentielle,
      • x^a.b puissance
    • moyenne mobile : moyenne mobile selon un des calculs :
      • arithmétique : moyenne sur les points précédents et/ou suivants
      • cumulative : moyenne sur tous les points depuis le début
      • pondérée : pondération linéaire des N précédents points
      • exponentielle : pondération exponentielle de tous les points
    • spline : créer une courbe de spline passant exactement par les points
Cliquez sur l'onglet Paramètres (3) pour accéder aux paramétrages de certaines méthodes :
  • pour la méthode polynôme, les degrés minimum et maximum du polynôme, sachant que ceux-ci peuvent être négatifs
  • pour les méthodes linéaire et polynôme, forcer l'ordonnée à l'origine, avec sa valeur (0,Y)
  • pour les méthodes moyennes mobiles, les nombres de points à prendre en compte.
Cliquez sur l'onglet Sorties (4) pour accéder aux paramétrages des sorties :
  • Les colonnes indiquées en (5) vont servir à stocker les résultats. Attention qu'aucune donnée n'y soit présente. Dans le cas contraire, un message vous avertit du risque d'écrasement de données. Cliquez dans la colonne à partir de laquelle stocker les résultats, puis cliquez sur le bouton Colonnes si vous voulez les changer.
  • (6) les valeurs de Ycalc sont données sous forme soit de formule, soit de valeur.
  • Un diagramme est créé si des valeurs sont cochées (7)
  • (8) un nouveau diagramme sera créé (nom à préciser juste en dessous) ou les valeurs seront insérées dans un diagramme existant
  • afin de rendre la courbe Ycalc plus douce, des valeurs intermédiaires peuvent être ajoutées entre les points. N=1 correspond à aucun point ajouté.
  • Lancez le calcul par le menu ou clic droit
L'interface se met alors en icône, vous laissant admirer le résultat. Les options supplémentaires sont accessibles dans les menus de l'extension.

:alerte: Les questions sur l'utilisation de cette extension sont à déposer dans la rubrique Tableur du forum.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par jumbo444 le 06 mars 2012 14:47, modifié 8 fois.
LibO 5.4.6.2 sous Ubuntu 16.04
jumbo444
InconditiOOnnel
InconditiOOnnel
Messages : 769
Inscription : 10 mars 2006 12:09
Localisation : Rouen, France

Re: [Calc] Courbe de tendance : polynôme et ordonnée à l'ori

Message par jumbo444 »

Bonsoir,

En complément ou à la place de cette extension, il existe l'extension SLAMLib qui dispose d'un moteur de calcul basé sur la décomposition QR, mais qui n'a pas d'interface graphique.

Il s'agit en fait de fonctions qui sont ajoutées dans Calc et qui permettent :
  • Polyfit : retourne les coefficients du polynôme d'ordre n à partir des X et Y expérimentaux
  • Polyval : calcule les valeurs Ycalc à partir d'un polynôme et de valeurs X
  • d'autres fonctions de calcul matriciel : décomposition QR, norme euclidienne, matrice de 0 ou de 1, etc.
LibO 5.4.6.2 sous Ubuntu 16.04
jumbo444
InconditiOOnnel
InconditiOOnnel
Messages : 769
Inscription : 10 mars 2006 12:09
Localisation : Rouen, France

Re: [Calc] Courbe de tendance : polynôme et ordonnée à l'ori

Message par jumbo444 »

Bonsoir,

Une mise à jour importante de l'extension (v1.4) inclut maintenant les courbes de tendance moyennes mobiles :
  • arithmétique avec les points précédents et/ou suivants
  • cumulative
  • pondérée linéairement sur les N derniers points
  • pondérée exponentiellement
La mise à jour n'a malheureusement pas encore été possible sur le site des extension d'OOo. Vous pouvez la retrouver sur celui de LibreOffice :
http://extensions.libreoffice.org/exten ... rend-lines
LibO 5.4.6.2 sous Ubuntu 16.04