Matheseitenüberblick
Plotterversion bis 30.7.2025
3D-Plotter (β)
zurück

Funktionsplotter

Mit diesem Tool können Graphen von Funktionen y=f(x) (orthogonale Koordinaten) oder ρ=f(φ) (Polarkoordinaten) sowie implizit gegebene und (neu!) parametrisierte Kurven gezeichnet werden. Geben Sie dazu den Funktionsterm mit der Variablen x bzw. phi bzw. eine Gleichung mit den Variablen x und y ein oder für parametrisierte Kurven z.B. [sin(k),cos(k),k,0,2*PI] (siehe unten). Es können beliebig viele Parameter enthalten sein, deren Werte auch interaktiv mit den Schiebereglern einstellbar sind. Berechnet werden für die Funktionen Nullstellen, Extrem- und Wendepunkte in der Nähe des Mauszeigers sowie Schnitte je zweier Kurven, falls vorhanden. Der Darstellungsbereich läßt sich mit der Maus verschieben (linke Taste), skalieren (rechte Taste) und zoomen (Mausrad). Weitere Erläuterungen unten.

In diesem Browser funktioniert dieser Plotter leider nicht. (Fehlende Unterstützung von canvas (HTML-5))  

Funktionsterm(e) oder Gleichung(en) eingeben:


  Zoom:
 
Farben:
 
Dicken:
 
Parameter:

 

Besondere Punkte
„on the fly” (besser: under the mouse) anzeigen für :
     Koordinaten     Ableitung(en)     dort:   Tangente     Normale
Schnittpunkte mit anderen Graphen (sofern vorhanden, für alle Kurvenarten)
Nullstellen    Extrema    Wendepunkte   (nur für explizit gegebene Funktionen der Art y=f(x))
    dabei Brüche und Wurzelausdrücke rekonstruieren     auch Vielfache von pi
Tip: Achsenschnitte impliziter Kurven kann man als Schnitte mit den Kurven x=0 (y-Achse) oder 0 (x-Achse) berechnen lassen.
für x (bzw. φ in °) = und
     Koordinaten     Ableitung(en)     Tangente     Normale
   

Darstellungsbereich manuell

Felder automatisch aktualisieren
Term in tt0t1[Farben]
#1 
#2
#3

Kurvenscharen
Sie können Kurvenscharen erzeugen, indem Sie im Formular rechts die Werte des oder der Scharparameter definieren. Geben Sie ins linke Feld entweder eine Liste von Werten ein oder einen Term über die Variable t. Dieser nimmt dann Werte für alle ganzzahligen Werte t im Intervall t0 ≤ t ≤ t1 an. Andere Schrittweiten als 1 können z.B. mit t/10 erreicht werden für Δt=0,1 oder 3t für Δt=3. Diese Grenzen t0 und t1 definieren Sie gegebenenfalls in den kleinen Feldern daneben. Auch für die Grenzen können Terme definiert werden, und sowohl der Term als auch die Grenzen dürfen die oben definierten Parameter enthalten. Zirkelbezüge sind natürlich unsinnig und haben unabsehbare Folgen, durchaus könnte sich das Programm daran aufhängen.
Man kann optional einen Farbverlauf (nur für den ersten Scharparameter) festlegen, indem in das entsprechende letzte Feld entweder rgb(Term für Rot,Term für Grün,Term für Blau) oder hsl(Term für Hue (Farbwinkel),Term für Sättigung,Term für Helligkeit) eingegeben wird, die Terme wieder mit dem Parameter t, der hier aber stets von 0 bis 1 läuft. In der rgb-Fassung liegen die Farbwerte im Intervall [0; 255], in der hsl-Fassung ist Hue ∈ [0; 360] und Helligkeit sowie Sättigung im Bereich [0; 100]. (Die % werden intern ergänzt.) Man muß also über den Parameter 0≤t≤1 die gewünschten Werte skalieren.
Im Feld für den Wert des Parameters selbst (oben rechts bei den Schiebereglern) referenzieren Sie den gewünschten Laufparameter mit entsprechendem #1, #2 oder #3. Solange dort eine solche Referenz eingetragen ist bzw. die Eintragung mit # beginnt, ist der Schieberegler für den Parameterwert ohne Funktion. Man kann auch mehrere Parameter vom gleichen Laufparameter abhängig machen.
Die Berechnung von Schnitten, Nullstellen, Tangenten etc. wird, falls aktiviert, immer für die Kurve mit dem letzten Parameterwert durchgeführt.

Ortskurven
können für die jeweils in der Liste ausgewählte Funktion aufgezeichnet werden für Extrempunkte oder Wendepunkte und Durchlaufen des Parameters durch den an den Reglern eingestellten Bereich. Doppelklicken Sie dazu auf ein markiertes Extremum oder einen markierten Wendepunkt. Durch Doppelklick auf weitere Punkte kann die Ortskurve erweitert werden. Die aufgezeichneten Ortskurven werden solange gespeichert und mitgeplottet, bis die Funktionen neudefiniert werden oder hier geklickt wird: .

Ableitungsfunktionen
plotten ( fnur für Auswahl):         alle     f '(x)   f ''(x)         ∂f(x,y)/∂x   ∂f(x,y)/∂y   df(φ)/dφ

Farben
können entweder per #rrggbb definiert werden, wobei die Rot-, Grün- und Blauanteile hexadezimal von 00 bis FF gehen können, oder per rgb(r,g,b) bzw. rgba(r,g,b,α), mit Werten von 0 bis 255 für die Farbanteile und von 0 bis 1 für den α-Kanal (mit Dezimalpunkten), womit zwischen 1=opak und 0=unsichtbar die Durchsichtigkeit geregelt werden kann. Die Farbmischung ist subtraktiv. Schließlich werden auch die 140 in html bzw. css benannten Farben erkannt.
Hier eine klickbare Liste dieser benannten Farben (einblenden):

Eingabesyntax, Eingabearten und implementierte Funktionen
Das Script versteht die Operatoren + - * / ^ (Produkte mit Parametern unbedingt mit * eingeben: a*x, denn ax oder auch a x werden nicht verstanden; 2x usw. ist möglich); darüber hinaus erkennt es diesen Funktionenzoo: sqrt(), exp(), log() oder ln() (beides für den nat. Log.), sin(), cos(), tan(), csc(), sec(), cot(), asin(), acos(), atan(), acot(), acsc(), asec(), sinh(), cosh(), tanh(), csch(), sech(), asinh(), acosh(), atanh(), acsch(), asech(), abs(). pi wird als Konstante π (=) interpretiert.
Die Parametergrenzen oder -Werte können auch Terme in Javascriptsyntax sein, z.B. Brüche, Math.PI oder Math.sqrt(2).
Wie bereits oben beschrieben, interpretiert dieses Script vier verschiedene Arten der Eingabe von Funktionen bzw. Kurven.

Funktionen können mit // am Zeilenanfang auskommentiert, also ausgeblendet werden; das kann auch für beliebige Kommentare verwendet werden.

Parameter
In den Funktionstermen können Parameter verwendet werden, deren Namen/Bezeichnungen man in das Textfeld einträgt. y, z und phi sind nicht erlaubt. Das erste Zeichen muß ein Buchstabe sein, danach können auch Zahlen und der Unterstrich (_) folgen. Groß- und Kleinschreibung wird nicht unterschieden. (Sie können im Funktionsterm einen Parameter A auch mit a bezeichnen und umgekehrt.) Die Parameterwerte können dann mit den Reglern eingestellt oder auch konkret eingetippt werden können. Die Kurven werden simultan neugezeichnet. In den Eingabefeldern links und rechts der Schieberegler können die jeweiligen Bereichsgrenzen festgelegt werden.

Schittpunkte
Während Nullstellen, Extrem- und Wendepunkte (in der Nähe des über die Graphik bewegten Mauszeigers) nur für Funktionen f(x)=y bestimmt werden, versucht das Script, Schnittpunkte zwischen allen Kurven zu finden, d.h. zwischen der jeweils in der Liste ausgewählten Kurve und allen anderen Kurven. Hierzu müssen z.T. nichtlineare Gleichungssysteme numerisch gelöst werden, was u.U. nur bei sehr guten Startnäherungen (Mausposition!) gelingt.
Vorläufig werden die für die Extremstellensuche benötigten 2. Ableitungswerte numerisch angenähert, was zu gewissen „Instabilitäten” in den hinteren Kommastellen führen kann.

Rasterung und Achsen

Rasterung: Linienbreite: Farbe:
Achsen: Linienbreite: Farbe:
Bezifferung: Fontgröße:     Schriftart:

Flächenfüllung(en)

Pro Zeile: [Kurve1,Kurve2,...];color;alpha
wobei Kurvei die Form [x(t),y(t),t0,t1,steps] für einen parametrisierten Randkurvenabschnitt über t ∈[t0, t1] haben kann oder nur ein Koordinatenpaar [x,y] für den nächsten Kurvenpunkt ist. Die Begrenzungskurve wird vor dem Füllen automatisch geschlossen. Man kann zeilenweise mehrere Flächen definieren.
Für die Fläche zwischen den Kurven x^3-a*x+b und exp(-x)*(c-x^2) über dem Intervall [0,2] gibt man ein: [[t,t^3-a*t+b,0,2],[t,exp(-t)*(c-t^2),2,0]];red;0.5
für die Fläche unter ex im II. Quadranten [[t,exp(t),-10,0],[0,0],[-10,0]];gold;0.5
Weitere Beispiele: [[t,1/6*t^2+1,a,b,100],[b,0.5*b],[a,0.5*a]];red;0.3
[[a*cos(t)+c,b*sin(t)+d,0,2*PI,1000]];#44ffee;0.5

Punkte und Fitten
In nebenstehende Tabelle können Punktkoordinaten (zeilenweise, durch Leerzeichen oder Tabulatoren getrennt) eingetragen werden. An diese Punkte kann dann eine der eingegebenen Funktionen von Typ f(x)=... angenähert werden. (Nichtlineare Regression, siehe →hier).
Der Erfolg hängt (sofern die Funktion keine einfache Linearkombination aus Teilfunktionen ist) eklatant von der Wahl günstiger Startwerte ab, die aus den aktuellen Einstellungen übernommen werden. Optional können in den Bereichen der Regler zusätzlich zufällige Startwerte getestet werden.

Punktdarstellung:
  Größe: px (Radius)
  Farbe:
Funktion:
Maximale Anzahl an Iterationen:
Schrittweitenparameter: λ=
zusätzliche Zufallssuche:
An Grenzen gebundene Parameter:
  a b c d e f
Verlauf zeigen
Punkte   →Ortskurve eintragen

  Punkte anzeigen

© Arndt Brünner, 31. 7. 2017
Erweiterung (jsplotter.htm→plotter.htm): 31. 7. 2025
Version: 3. 8. 2025

Diese neue Version des Funktionsplotters (ab 31. 7. 2025) bietet gegenüber der Vorgängerversion folgende Änderungen/Erweiterungen:

Falls Fehlfunktionen auffallen, bitte Mail an oder