PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenOffice XY Diagramm - Linien interpolieren



stefan-tiger
13.04.05, 20:50
Hallo,

aus der Excel-Welt kenne ich "interpolierte" Linien.
Unter OpenOffice (1.1.4 und 2.0 Beta) hab ich nur diese "Splines gefunden.

Leider sieht das total falsch aus wenn ich damit ein "schönen" Amplitudenfrequenzganz darstellen will.

Eckige "Kurven", also direkt verbundene Meßpunkte sind nicht erlaubt.

Wie bekomme ich das hin, daß ich eine "geschmeidige" Kurve im Diagramm hab?
Im Anhang ein OO Bild wie es nicht sein soll, und ein Excel Bild wies sein soll.

Gruß und Danke.

PS: Ich habs das auch schon in einem OO Forum gepostet, aber es ist dringend, sonst muss ich meine Diagramme mit Excel machen :(

moedule
14.04.05, 01:32
hey

ich denke openoffice (zumindestens version 1.1) kann nur lineare, exponentielle, logarithmische und quadratische regression, die von dir egfittete kurve ist aber eher sowas wie ein polynom 5. grades (oder was ganz anderes)

2.0 hab ich noch nicht angeschaut, wenns da splines gibt geht könnte es doch eigentlich auch polynome höherer ordnung geben (allerdinsg sind splines auf jeden fall FALSCH wenn es um ein regressionskurve geht! da kommen artefkate hinzu die nichtts mit messungen zu tun haben)

in deinem fall wäre wohl eine lorentzkurve der beste fit (vielleicht überlagert mit was anderem)

ansonsten rate ich beim plotten und fitten wie immer zu gnuplot, ist dafür einfach besser geeignet
wenn du dazu fragen hast, ... steh ich gern zur verfügung

so wirds in gnuplot gemacht


h(x) = a/(1+((x-b)/c)**2)
fit h(x) 'deine_daten' via a,b,c
plot h(x), 'deine_daten'

sieht dann so aus
http://leia.physik.uni-konstanz.de/~bubek/tmp/oo.png

moe

moedule
14.04.05, 01:51
bzw es gibt bei OO auch kubischer spline, aber der langt für deine daten auch nicht

stefan-tiger
14.04.05, 13:01
bzw es gibt bei OO auch kubischer spline, aber der langt für deine daten auch nicht

Den kubischen Spline hab ich ja auf dem eienn Screenshot verwendet.

Was heisst es langt nicht?
Wie macht Excel das? Sehe ich das richtig, daß diese Funktion in OO einfach fehlt?

Damit wäre es für mein Studium umgeeignet, da wir stetige Kurven aus Meßpunkten erzeugen müssen.
Direkte Verbindungen zwischen den Meßpunkten (siehe eckiger Kurvenverlauf) sind nur bei Kalibrierkennlinien zugelassen.

:(

stefan-tiger
23.04.05, 09:35
Kann jemand französisch?

http://fr.openoffice.org/servlets/Search?scope=projectAndSubs&resultsPerPage=40&query=interpol&Button=Go

Gruß

moedule
23.04.05, 11:34
naja schon etwas, aber die schreiben halt auch das OO vielleicht nicht das richtige werkzeug ist (Calc n'est peut-être pas l'outil idéal)

moe

moedule
23.04.05, 11:40
Den kubischen Spline hab ich ja auf dem eienn Screenshot verwendet.


wie schon oben erwähnt... spline ist nicht gut



Was heisst es langt nicht?
Wie macht Excel das? Sehe ich das richtig, daß diese Funktion in OO einfach fehlt?


langt nicht soll heißen das du für deine daten ein polynom höherer ordnung brauchst, um sie zu fitten. ein polynom dritter ordnung (kubisch) kann auf keinen fall diese kurve beschreiben
excel wird wohl noch polynome höherer ordnung benutzen, oder es ist auch eine spline-funktion?



Damit wäre es für mein Studium umgeeignet, da wir stetige Kurven aus Meßpunkten erzeugen müssen.
Direkte Verbindungen zwischen den Meßpunkten (siehe eckiger Kurvenverlauf) sind nur bei Kalibrierkennlinien zugelassen.
:(

ich würde auch sagen, daß OO zum fitten ganz sicher nicht die erste wahl ist.
direkte verbindungen sind ja im prinzip auch falsch, sie sugerieren, daß es meßwerte gibt die auf diesen geraden liegen. lieber kurve weglassen als eine gerade

moe

stefan-tiger
23.04.05, 14:48
langt nicht soll heißen das du für deine daten ein polynom höherer ordnung brauchst, um sie zu fitten. ein polynom dritter ordnung (kubisch) kann auf keinen fall diese kurve beschreiben
excel wird wohl noch polynome höherer ordnung benutzen, oder es ist auch eine spline-funktion?



Wie Excel das macht weiss ich auch nicht, nur sieht es dort sehr "natürlich" aus. Und OO Calc soll das Gegenstück zu Excel sein.
Daß bei Spline ein Polynom gebildet wird hab ich mir schon fast gedacht (siehe Screenshots) ;)

Ich hab jetzt die "Interpolation" mal "Issue" als "FEATURE" in die OpenOffice Issue-Datenbank eingegeben, vielleicht stolpert ja ein Entwickler drüber und impelemtiert es. :)

Gruß

moedule
23.04.05, 23:09
spline ist meines wissens nach eben kein polynom ...


ja vielleicht stoplert einer drüber ... oder du setzt dich selber mal dran und programmierst es ... das ist doch die idee am open vom openoffice :-)

moe

stefan-tiger
24.04.05, 08:55
... ... oder du setzt dich selber mal dran und programmierst es ... das ist doch die idee am open vom openoffice :-)
...

Ja schon. Nur zwischen "Sprachelemente einer Programmiersprache beherrschen" über "libs kennen" bis zu "konkret an einem Projekt mitwirken können" ist ein echt langer weg und ich befind mich noch auf Stufe 1 :(

Ausserdem müsste ich ja dann auch erstmal meinen code mit dem OO code selbst kompilieren und testen, und OO zu kompilieren (hatte ich ausversehen mal per emerge) hat ewig gedauert :(

Soviel Zeit hab ich leider nicht.

Gruß

moedule
24.04.05, 12:46
ich sags einfach nochmal, ich rate dir einfach zum fitten ein anderes programm zu nehmen, das dafür ausgelegt ist (z.B. gnuplot). wäre denn der fit ok gewesen den ich gemacht habe?

fitten ist ja eine kunst für sich und eigentlich muß man ja eine funktion reinstekcne, die man aus der theorie erwartet (z.B. eine gerade), die von mir gefittete lorentzkurve hat vielleicht nichts mit deinem problem zu tun, vielleicht mußt du auch ne gaußkurve oder ähnliches nehmen

moe

oracle2025
24.04.05, 14:27
Du meine Güte, Splines und Fitten und Polynome, das ist doch total egal, es geht doch einfach nur darum dass die Kurve rund und nicht eckig ist.
:p

stefan-tiger
24.04.05, 15:24
Du meine Güte, Splines und Fitten und Polynome, das ist doch total egal, es geht doch einfach nur darum dass die Kurve rund und nicht eckig ist.
:p

Ich glaube, daß demjenigen, dem ich die Diagramme zeigen muss dann schon auffällt wenn die Interpolation "nur irgendwie" ist. Ich denke, die Excel-Funktion erfüllt technische & wissenschaftliche Anforderungen.

Leider hab ich noch nirgends gefunden was Excel da genau macht (mathematisch und algorithmisch). Sonst könnte ich mir vorerst mal ein StarBasic Makro machen, daß das erledigt.

gnuplot usw. will ich nicht verwenden, da es zusätzlichen Aufwand für mich bedeuted. Ich arbeite bequemer und effizienter wenn ich nur nen Button in der Applikation drücken muss, in der ich auch den ganzen Rest mach. ;)

Gruß

stefan-tiger
24.04.05, 15:34
... wäre denn der fit ok gewesen den ich gemacht habe?

..

Leider nicht. Das ist eher eine Approximation, wenn man den Vorgang rein mathematisch beschreiben wollte.

Die Interpolation die ich brauche muss eine Kurve ergeben, die exakt durch alle Meßpunkte durchgeht.
Die Interpolation soll eine Vorstellung davon geben, wie weitere Meßpunkte lägen. Es muss stetig sein. Leider kann ich es nicht genauer Erklären. Man muss einfach den Eindruck haben, daß wenn unendlich viele Meßpunkte zwisschen zwei der jetzigen Meßpunkte gemacht worden wären es einen realistischen Verlauf ergibt.

Ich darf hier bitte nochmal an den Excel-Screenshot erinnern. (ganz oben, 3. Bild)

Gruß

moedule
24.04.05, 20:03
Du meine Güte, Splines und Fitten und Polynome, das ist doch total egal, es geht doch einfach nur darum dass die Kurve rund und nicht eckig ist.
:p

nein, das ist schlicht und ergreifend nicht richtig

ein spline ist nur eine abschnittsweise defienierete polynomfunktion, sie istb so konstruiert, das sie sehr weich ineinander übergehen, soll heißen es werden immer nur einige wenige punkte gefittet, dann werden die einzelstücke zusammengefügt

beim wissenschaftlichen fitten hingegen steht nicht das aussehen im vordergrund, eigentlich fittet man immer eine vermutete theoretische kurve.
man fittet kurven um den verlauf an nicht gemessenen punkten vorhersagen zu können, und bei geeigneter theorie gelingt das auch mehr oder weniger gut

ein spline kann gewisse artefakte zeigen, die nichts mit der physikalischen realität gemein hat, sie kommen einfach aus der "schönheit" der kurve

moe

moedule
24.04.05, 20:05
Die Interpolation die ich brauche muss eine Kurve ergeben, die exakt durch alle Meßpunkte durchgeht.
Die Interpolation soll eine Vorstellung davon geben, wie weitere Meßpunkte lägen. Es muss stetig sein. Leider kann ich es nicht genauer Erklären. Man muss einfach den Eindruck haben, daß wenn unendlich viele Meßpunkte zwisschen zwei der jetzigen Meßpunkte gemacht worden wären es einen realistischen Verlauf ergibt.


eine interpolation darf eigentlich auch nicht exakt durch die punkte führen !

moe

stefan-tiger
24.04.05, 20:10
eine interpolation darf eigentlich auch nicht exakt durch die punkte führen !

moe

Fall das so ist hat Microsoft wohl ihre Diagrammtypen falsch benannt und ich kann mich eben nicht ausdrücken ;)

moedule
24.04.05, 20:31
Fall das so ist hat Microsoft wohl ihre Diagrammtypen falsch benannt und ich kann mich eben nicht ausdrücken ;)


so... jetzt hab ich mal im excel geschaut, was du eigentlich gemacht hast, ich galube wir haben da aneinander vorbeigeredet.

du hast gar nicht einen kurvenfit im nachhinein reingemacht, sondern du hast gleich beim erstellen des diagramms auf XY - PUnkte mit interpolierten Linien - geklickt. hm ich hab keine ahnung was er da macht aber es sieht mir nach spline aus

moe