Gibt es ein Werkzeug, das eine grafische Darstellung einer Gleichung in diese Gleichung umwandelt? (Grafische Darstellung zu einer ungefähren mathematischen Gleichung)Mathematischer Graph zu Gleichung
Antwort
Dies ist ein kniffliges Problem, das normalerweise als interpolation bezeichnet wird. Für einfache polynomische Graphen ist es ein einfaches Problem. (Sie können immer eine "genaue Übereinstimmung" finden.) Werfen Sie einen Blick auf polynomial interpolation. Aber Sie könnten auch einen Graphen haben, der eine trigonometrische Funktion darstellt. Oder wie wäre es mit Exponentialfunktionen oder logarithmischen Funktionen? Oder schlimmer, Kombinationen! Selbst für einfache Graphen kann es Tausende interessanter Potentialgleichungen geben.
Auch wenn Sie tun überprüfen Sie alle interessanten Gleichungen, sollten Sie dennoch vorsichtig sein. Betrachten Sie die Gleichung y = A * sin(B*x)
, mit extrem großen Werten für A
und B
. Wie sieht dieses Diagramm aus? Nun, es geht rauf und runter zwischen A
und -A
immer wieder, wirklich sehr schnell, und "hits" oder "fast hits" fast alle Punkte. Es ist eine "einfache" Formel, die mathematisch wie eine gute Annäherung aussieht, aber es ist immer noch wahrscheinlich nicht etwas, was Sie am Ende wollen.
@aioobe: Jede stetige Funktion kann durch Polynome sehr nah angenähert werden, sei es trigonometrisch oder eine schlechtere Kombination von ihnen.Ein Polynom hohen Grades sollte für die meisten Funktionen gut genug sein, insbesondere solche, die graphisch dargestellt werden können. Obwohl die tatsächliche Gleichung anders sein kann, werden die Polynome eine sehr gute Annäherung an den Graphen ergeben. Siehe: http://mathworld.wolfram.com/WeierrassApproximationTheorem.html –
Nun, haben Sie von [Runges Phänomen] (http://en.wikipedia.org/wiki/Runge%27s_phenomenon) gehört? Sicher, ein hochgradiges Polynom wird es "lösen", aber es wird wahrscheinlich immer noch nicht das sein, wonach Sie suchen. – aioobe
@Moron: Keine kontinuierliche Funktion. Zum Beispiel ist "y = sin (1/x)" kontinuierlich über das offene Intervall "0
Ich habe einige Werkzeuge gesehen, die Gleichungen zu Grafiken in Bildern passen, aber ich kann ihre Namen gerade nicht erinnern. Eine schnelle Google-Suche ergab diese kommerzielle Anwendung: http://imagedig-2d-3d-image-digitizer.smartcode.com/info.html
Ein häufiges Problem, das Ihre Beschreibung passen könnte heißt curve fitting: Sie haben einige Daten (die, in Ihrem Fall, haben Sie aus einem Diagramm gelesen) und Sie haben beachten Sie eine Form einer Gleichung, und Sie möchten herausfinden, welche Parameter Sie am besten zu der Grafik passen.
Ein nützlicher Ansatz dazu ist passend zu least squares Fehler. Ein Paket der kleinsten Quadrate wird in den meisten Datenanalyse-Toolkits verfügbar sein.
Hier ist ein Beispiel: Sagen wir die Gleichung ist A * sin (2 * pi * 100.x) * x^B, und ich muss die Werte von A und B finden, die mir am besten passen (A = 10.0 und B = 3,0 in diesem Beispiel).
alt text http://i47.tinypic.com/k3x9fk.png
Hier ist der Code verwendet, um diese Passform zu erzeugen. Es verwendet Python und Scipy und aus einem dem Beispiel here modifiziert.)
from numpy import *
from scipy.optimize import leastsq
import matplotlib.pyplot as plt
def my_func(x, p): # the function to fit (and also used here to generate the data)
return p[0]*sin(2*pi*100.*x)*x**p[1]
# First make some data to represent what would be read from the graph
p_true = 10., 3.0 # the parameters used to make the true data
x = arange(.5,.5+12e-2,2e-2/60)
y_true = my_func(x, p_true)
y_meas = y_true + .08*random.randn(len(x)) # add some noise to make the data as read from a graph
# Here's where you'd start for reading data from a graph
def residuals(p, y, x): # a function that returns my errors between fit and data
err = y - my_func(x, p)
return err
p0 = [8., 3.5] # some starting parameters to my function (my initial guess)
plsq = leastsq(residuals, p0, args=(y_meas, x)) # do the least squares fit
# plot the results
plt.plot(x, my_func(x, plsq[0]), x, y_meas, '.', x, y_true)
plt.title('Least-squares fit to curve')
plt.legend(['Fit', 'Graph', 'True'])
plt.show()
+1 für die Mühe der Erklärung. Ich möchte nur darauf hinweisen, dass es andere Methoden wie die Maximum-Likelihout-Eximation gibt, die in einigen Fällen genauer sind. Sehen Sie dieses Papier für eine nette einleitende Erklärung http://www.scribd.com/doc/7372377/Tutorial-on-Maximum-Likelihood-Estimation – nico
@nico - Sie haben Recht, dass MLE in einigen Fällen genauer ist, aber nicht dieses. Least Squares ist ein präziser, gebräuchlicher, schneller und einfacher Liner und die richtige Wahl für eine Frage, bei der ich "Kurvenanpassung" definieren muss. Wie auch immer, obwohl ich normalerweise mit Ihnen daran denke, dass normale Verteilungen überstrapaziert werden, ist es hier eine vernünftige Annahme, und für diesen Fall sind die kleinsten Quadrate und MLE dasselbe. – tom10
Bei der Verwendung eines geeigneten Ansatzes müssen Sie eine Schätzung (oder eine Reihe von Annahmen) darüber haben, welche funktionale Form die Lösung haben soll. Dementsprechend ist dieser Ansatz in einigen Fällen nützlich und nicht in anderen. – dmckee
- 1. Ausführen mathematischer Gleichung in Android
- 2. Schreiben mathematischer Gleichung in JavaScript
- 3. NSString zu Gleichung
- 4. Rechner Mathematischer Fehler
- 5. Boolescher und mathematischer Ausdruck Parser
- 6. Ausrichten mathematischer Gleichungen in Latex
- 7. Schneller mathematischer Algorithmus opfert Genauigkeit
- 8. Loess Fit und resultierende Gleichung
- 9. eine Gleichung mit Matplotlib graphisch darstellen
- 10. eine Gleichung
- 11. boolean Gleichung
- 12. Optimieren Compiler automatisch wiederholte Aufrufe mathematischer Funktionen?
- 13. C# dll einfache Gleichung zu lösen
- 14. Mathematischer Fehler bezüglich Arrays und Klassen
- 15. Sortieren mit mathematischer Formel mit nHibernate (C#)
- 16. Wie zeichne ich den Graph zwischen w und phi mit einer Gleichung mit MATLAB?
- 17. Chemische Gleichung Parsing
- 18. Quadratische Gleichung in Ada
- 19. Vala - Gleichung Parsing
- 20. Eingabe/Ausgabe - Arithmetische Gleichung
- 21. COMSOL Schrödinger Gleichung
- 22. Trigonometrische Gleichung Mathematica
- 23. Wie Gleichung zu lösen und richtig zu speichern?
- 24. Quadratische Gleichung Solver PHP
- 25. Testen eine quadratische Gleichung
- 26. PHP-Gleichung von JavaScript
- 27. Seltsame printf Gleichung
- 28. Javascript Math Gleichung
- 29. PHP Mathe Gleichung Funktion
- 30. eine Gleichung opencv
Graphical wie in „Graphenstruktur“ oder als in „Rasterbild“? –
equestion to equestion? Was ist eine Frage? Elektronische Frage? –
a) Grafisch als x-y-Achsen-Graph b) Entsprechungstyp: sin (x) * x^3 + 3 etc. – Mathie