[Résolu] Courbe de différence à partir de 2 autres courbes
Modérateur : Vilains modOOs
Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
-
- Fraîchement OOthentifié
- Messages : 2
- Inscription : 27 août 2010 15:39
[Résolu] Courbe de différence à partir de 2 autres courbes
Bonjour,
J'ai un graphique qui représente deux courbes d'évolution (nuage de point) mais à partir de données n'ayant pas la même abscisse. Voir capture d'écran pour plus de clarté...
J'ai besoin de générer une courbe (et éventuellement les données, donc interpolées) représentant la différence entre ces deux courbes. En théorie, pour un x donné, je fais la différence des y mais comme je n'ai pas de x en commun sur mes plages de données, il faut que je considère chaque segment linéaire pour faire la différence pour chaque x.
Alors après avoir un peu cherché, je viens vers vous pour savoir si quelqu'un s'est déjà retrouvé dans cette situation ou aurait une piste de réflexion à offrir, ou s'il faut que j'utilise autre chose qu'un tableur pour faire ça...
h**p://img405.imageshack.us/i/capture1hc.png/ image localisée sur un site tiers
J'ai un graphique qui représente deux courbes d'évolution (nuage de point) mais à partir de données n'ayant pas la même abscisse. Voir capture d'écran pour plus de clarté...
J'ai besoin de générer une courbe (et éventuellement les données, donc interpolées) représentant la différence entre ces deux courbes. En théorie, pour un x donné, je fais la différence des y mais comme je n'ai pas de x en commun sur mes plages de données, il faut que je considère chaque segment linéaire pour faire la différence pour chaque x.
Alors après avoir un peu cherché, je viens vers vous pour savoir si quelqu'un s'est déjà retrouvé dans cette situation ou aurait une piste de réflexion à offrir, ou s'il faut que j'utilise autre chose qu'un tableur pour faire ça...
h**p://img405.imageshack.us/i/capture1hc.png/ image localisée sur un site tiers
Ooo 3.1 + ubuntu9.10
-
- Membre cOOnverti
- Messages : 322
- Inscription : 08 mai 2009 13:33
- Localisation : Le Havre (Seine-Maritime / France)
Re: générer courbe de différence à partir de 2 autres courbe
C'est faisable, puisque tu peux considérer chaque segment d'une courbe comme une ligne droite d'équation y = ax + b et tu peut retrouver les valeurs de a et b avec les deux couples (x,y) des points de début et de fin du segment. Ensuite, avec cette équation tu pourras trouver la valeur y du x de ton autre courbe se trouvant "sur" ce segment.
Avec ça, tu pourras recalculer tous les points qui te manque et faire ta différence.
Par contre, cela risque d'etre "un peu artisanal", donc faisable mais au coup par coup. Je veux dire que si tu dois faire cela pour 50 séries de 2 courbes chaque jour, ca a être chaud, je pense
Si tu fourni un fichier plutôt qu'une simple copie d'écran, je pourrais te monter un truc de démo
Avec ça, tu pourras recalculer tous les points qui te manque et faire ta différence.
Par contre, cela risque d'etre "un peu artisanal", donc faisable mais au coup par coup. Je veux dire que si tu dois faire cela pour 50 séries de 2 courbes chaque jour, ca a être chaud, je pense
Si tu fourni un fichier plutôt qu'une simple copie d'écran, je pourrais te monter un truc de démo
Christophe
Libreoffice 3.4.2 sous Windows XP SP2/SP3 + Windows 7 Premium 64 bits
Libreoffice 3.4.2 sous Windows XP SP2/SP3 + Windows 7 Premium 64 bits
-
- GourOOu
- Messages : 5753
- Inscription : 02 janv. 2009 23:56
Re: générer courbe de différence à partir de 2 autres courbe
Bonsoir,
Ce fil est à consulter ; il s'agit de moyennes et non de différences, mais ça peut te donner des idées...
Cordialement
Jean-Louis
Ce fil est à consulter ; il s'agit de moyennes et non de différences, mais ça peut te donner des idées...
Cordialement
Jean-Louis
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
-
- Membre cOOnverti
- Messages : 393
- Inscription : 10 juil. 2008 06:42
- Localisation : Lyon - France
Re: générer courbe de différence à partir de 2 autres courbe
Bonsoir bouyoul,
Il y a quelques années je m'étais fait une fonction Calc pour interpoler une fonction définie par une série de couples (X,Y). Elle a trois arguments : une série d'abscisses (par exemple A1:A10), la série d'ordonnées correspondantes (par ex. B1:B10) et la valeur X pour laquelle on veut une estimation de la fonction. L'interpolation est linéaire et la fonction détecte les deux abscisses qui encadrent X ou si X est en dehors de l'intervalle. Je ne me souviens pas ce que j'avais choisi de faire dans ce dernier cas, sans doute un prolongement, mais lequel ?
Si ça t'intéresse, je peux la fournir. Comme elle est sur mon ordinateur professionnel envoie moi un message personnel pour que j'y pense lundi.
Une fois que tu as une fonction d'interpolation, il suffit de créer une troisième série de données avec un pas en abscisse assez fin et sur laquelle tu fais la différence des interpolations de tes deux courbes. Par exemple dans le cas que tu donnes en exemple, tu prends une série avec un pas en abscisse de 1 et tu interpoles tes deux courbes sur ces nouvelles abscisses puis tu fais la différence. Si tu sais d'avance que l'interpolation linéaire donne de bons résultats sur tes deux courbes, alors le résultat final devrait être bon.
Bonne soirée
JBF
Il y a quelques années je m'étais fait une fonction Calc pour interpoler une fonction définie par une série de couples (X,Y). Elle a trois arguments : une série d'abscisses (par exemple A1:A10), la série d'ordonnées correspondantes (par ex. B1:B10) et la valeur X pour laquelle on veut une estimation de la fonction. L'interpolation est linéaire et la fonction détecte les deux abscisses qui encadrent X ou si X est en dehors de l'intervalle. Je ne me souviens pas ce que j'avais choisi de faire dans ce dernier cas, sans doute un prolongement, mais lequel ?
Si ça t'intéresse, je peux la fournir. Comme elle est sur mon ordinateur professionnel envoie moi un message personnel pour que j'y pense lundi.
Une fois que tu as une fonction d'interpolation, il suffit de créer une troisième série de données avec un pas en abscisse assez fin et sur laquelle tu fais la différence des interpolations de tes deux courbes. Par exemple dans le cas que tu donnes en exemple, tu prends une série avec un pas en abscisse de 1 et tu interpoles tes deux courbes sur ces nouvelles abscisses puis tu fais la différence. Si tu sais d'avance que l'interpolation linéaire donne de bons résultats sur tes deux courbes, alors le résultat final devrait être bon.
Bonne soirée
JBF
LibreOffice 7 (avec la dernière mise à jour corrective) sous Linux Ubuntu 22.04
Listes de discussions francophones : https://fr.libreoffice.org/get-help/mailing-lists/
Listes de discussions francophones : https://fr.libreoffice.org/get-help/mailing-lists/
-
- GourOOu
- Messages : 5753
- Inscription : 02 janv. 2009 23:56
Re: générer courbe de différence à partir de 2 autres courbe
Toujours sur le principe de l'interpolation linéaire, je propose un classeur
Les cellules en jaune clair sont à renseigner, les cellules en violet clair et les courbes sont calculées automatiquement. Les formules sont remplies jusqu'à la ligne 100. Les colonnes intermédiaires sont masquées pour juger du résultat final, ces colonnes doivent être affichées si l'on veut suivre la progression du calcul. Il aurait sans doute été possible de regrouper davantage les formules, mais ç'aurait été au détriment de la clarté. Par exemple, je fais une colonne pour chaque choix possible :
Attention, l'interpolation linéaire, dans l'exemple fourni, est plus précise pour la courbe 2, mieux échantillonnée, que la courbe 1...
Ne pas confondre interpolation et extrapolation ! Le point X=140 n'a pas d'équivalent possible pour la courbe 2, qui s'arrête au point X=136, donc pas de différence calculée, la formule en tient compte.
Cordialement
Jean-Louis
qui calcule automatiquement la courbe (Y2-Y1), différence entre la courbe 2 et la courbe 1. Les X sont récupérés des deux courbes, classés, doublons éliminés, les Y correspondants sont retrouvés ou, s'ils n'existent pas sur l'une des deux courbes, interpolés linéairement (comme l'expose jbfaure)Les cellules en jaune clair sont à renseigner, les cellules en violet clair et les courbes sont calculées automatiquement. Les formules sont remplies jusqu'à la ligne 100. Les colonnes intermédiaires sont masquées pour juger du résultat final, ces colonnes doivent être affichées si l'on veut suivre la progression du calcul. Il aurait sans doute été possible de regrouper davantage les formules, mais ç'aurait été au détriment de la clarté. Par exemple, je fais une colonne pour chaque choix possible :
- choix 1 : une valeur particulière de l'abscisse est référencée par la courbe 1 mais pas par la 2
- choix 2 : une valeur particulière de l'abscisse est référencée par la courbe 2 mais pas par la 1
- choix 3 : cette valeur est référencée sur les deux courbes
Attention, l'interpolation linéaire, dans l'exemple fourni, est plus précise pour la courbe 2, mieux échantillonnée, que la courbe 1...
Ne pas confondre interpolation et extrapolation ! Le point X=140 n'a pas d'équivalent possible pour la courbe 2, qui s'arrête au point X=136, donc pas de différence calculée, la formule en tient compte.
Cordialement
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
-
- Fraîchement OOthentifié
- Messages : 2
- Inscription : 27 août 2010 15:39
Re: générer courbe de différence à partir de 2 autres courbe
Merci beaucoup pour vos réponses et explications... Je connaissais la méthode artisanale, mais effectivement il faut que je génère ce genre de graphique pour un paquet de cas, et je me doutais qu'on pouvait faire ça de façon semi-automatisée.
Encore merci, cela va beaucoup m'aider.
Encore merci, cela va beaucoup m'aider.
Ooo 3.1 + ubuntu9.10
-
- RespOOnsable forum
- Messages : 12228
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: générer courbe de différence à partir de 2 autres courbe
Bonsoir,
Si votre problème est résolu, il est alors de bon ton d'ajouter dans le titre du premier message la balise [Résolu]. Ceci augmente la lisibilité du forum. Vous vous en êtes sûrement rendu compte en parcourant les différents fils de discussion.
Nous l'avons fait à votre place mais la prochaine fois, nous vous prions de le faire vous-même.
Vous avez illustré votre question avec des fichiers en provenance d'un site tiers. Or, souvent ces sites n'assurent aucune pérennité sur les données qu'ils hébergent.
C'est pour cela que nous préférerons que vous utilisiez notre service de pièce-jointe dont le lien est mentionné en bas lorsque vous écrivez votre message : http://user.services.openoffice.org/fr/ ... forum.html
Veuillez corriger votre message en utilisant le bouton "Editer" (situé à droite) et en mettant en ligne votre fichier correctement.
Vous en remerciant par avance.
Si votre problème est résolu, il est alors de bon ton d'ajouter dans le titre du premier message la balise [Résolu]. Ceci augmente la lisibilité du forum. Vous vous en êtes sûrement rendu compte en parcourant les différents fils de discussion.
Nous l'avons fait à votre place mais la prochaine fois, nous vous prions de le faire vous-même.
Vous avez illustré votre question avec des fichiers en provenance d'un site tiers. Or, souvent ces sites n'assurent aucune pérennité sur les données qu'ils hébergent.
C'est pour cela que nous préférerons que vous utilisiez notre service de pièce-jointe dont le lien est mentionné en bas lorsque vous écrivez votre message : http://user.services.openoffice.org/fr/ ... forum.html
Veuillez corriger votre message en utilisant le bouton "Editer" (situé à droite) et en mettant en ligne votre fichier correctement.
Vous en remerciant par avance.
-
- Fraîchement OOthentifié
- Messages : 1
- Inscription : 03 juil. 2023 12:47
Re: [Résolu] Courbe de différence à partir de 2 autres courbes
Vous pouvez utiliser chaque lot de données et le redimensionner au pas voulu. ExtraGraphe un logiciel libre de redimensionnement de données est apte à ce genre de tâche. tu peux avoir plus d'information à travers ce lien: https://youtu.be/UFStGzWJTHo
OpenOffice 2.4 sous Windows XP
-
- RespOOnsable forum
- Messages : 12228
- Inscription : 08 nov. 2005 16:23
- Localisation : Caen, France
Re: [Résolu] Courbe de différence à partir de 2 autres courbes
Splendide déterrage d'un sujet vieux de plus de 10 ans.
Signature complètement obsolète et vidéo YouTube n'ayant rien à voir avec la choucroute.
Je verrouille.
Signature complètement obsolète et vidéo YouTube n'ayant rien à voir avec la choucroute.
Je verrouille.