+3 Daumen
900 Aufrufe

NEU: Formeln können automatisch zu Graphen umgewandelt werden

ich habe ein neues Feature für Mathelounge.de umgesetzt: Wenn ihr eine Funktionsgleichung habt und diese zeichnen möchtet, könnt ihr dies nun direkt auf der Webseite tun. Mit dem neuen Tool entfällt der Umweg über Zeichenprogramme, Speichern als Bild, hochladen etc. =) Vgl. Antwort-Beispiel hier.

Einfach die Funktionsgleichung in den folgenden Zeichen einschließen: ~plot~ 2x*sin(x) ~plot~ 

Beispiel:

~plot~ 2x*sin(x) ~plot~

Update:

Update: Ihr könnt jetzt auch Punkte einzeichnen. Dazu geschwungene Klammern wählen, Koordinaten mit senkrechtem Strich trennen, als Beispiel: {1|1}

~plot~ {1|1};{1|1,5};{1|2};{1,5|2};{2|2} ~plot~

Update: Der obige Graph wird jetzt mit einem anderen Tool eingebettet.

Voriges Tool: https://www.matheretter.de/tools/graphobed.html

1. Dies ist die allererste Version. Gefundene Fehler bitte melden. Vorschläge zur Verbesserung sind gerne gesehen ;-)

2. Das Zoomen ist noch nicht möglich. Bisher nur von -5 bis 5 für x- und y-Achse.

3. Bei tan(x) werden die Definitionslücken durchgehend gezeichnet.

4. Funktioniert nicht in der Vorschau und auch nicht direkt nach dem Absenden von Antwort/Kommentar (dazu muss die Seite derzeit noch neu geladen werden).

Übrigens habe ich es so gebaut, dass man die Funktionsgleichung gleich auf der Webseite live ändern kann, ich dachte mir, ein wenig Interaktivität kann nur gut tun ;-)

Was haltet ihr davon?

Liebe Grüße
Kai

von 12 k

Ich sehe schon ein paar kleine Probleme.

Zum Beispiel klappt es mit Carets noch nicht. Also problematisch ist noch z. B. 2^sin(x)

Bin am Debuggen ;)

Update, jetzt klappt es soweit:

~plot~ 2^ sin(x) ~plot~

Mit dem neuen Tool lassen sich wunderbar schnell Funktionsgleichungen erstellen:

Bild Mathematik

Das klingt doch nach einem Wettbewerb, wer die schönsten Graphen erschafft?! =)

Sieht echt gut aus!

Ansonsten ist die Idee sicherlich gut.
Danke Kai.

Perfekt dazu geeignet, um solche Antworten zu überprüfen, siehe bei Der_Mathecoach: https://www.mathelounge.de/223003/funktionsgleichungen-anhand-von-graphen-erstellen

Update: Ihr könnt jetzt auch Punkte einzeichnen!

Einfach dazu geschwungene Klammern wählen, Koordinaten mit senkrechtem Strich trennen, als Beispiel: {1|1}

~plot~ x;{1|1};{2|2};{3|3} ~plot~

oder für Sinus mit Pi:

~plot~ sin(x);{0|0};{pi/2|1};{pi|0} ~plot~

Soweit, so gut :)

Besten Dank. Kai

EDIT: Habe gerade gesehen, dass vertikale Linien nicht möglich sind. x=3 horizontal zu zeichnen ist allerdings falsch. Dann besser einfach die rote Linie nicht anzeigen.

Aber der Zeichnet y=3 und nicht x=3. Also die vertikale Linie, die ich da gerne hätte malt er mir horizontal hin:

Bild Mathematik

Zum Vergleich eine vertikale Linie x=2 mit dem "Funktionsplotter":

Bild Mathematik

Hi Lu, wie ich unten schon geschrieben habe, x=3 wird nicht geplottet, das hieße übersetzt für den Plotter: f(x)=x=3, also inkorrekt. Daher nur "3" notieren, das heißt dann: f(x)=3, also korrekt.

Der neue "Embed-Plotter" hier auf Mathelounge.de funktioniert anders als der Funktionsplotter auf Matheretter.

Für die vertikalen Linien muss ich mir noch eine Notation einfallen lassen und das dann per Parametergleichung umsetzen. Vielleicht wirklich mit folgender Notation: y=3. Ich denke noch mal darüber nach.

Hi Kai,

das habe ich gesehen. Vgl. EDIT oben. Aber

x=3 darf nicht horizontal gezeichnet werden, da vertikal.

y=3 ist die korrekte Form für horizontale Geraden im xy-Koordinatensystem.

Ah, danke für den Hinweis, das hatte ich übersehen. Ich habe aus der Sicht eines Programierers geschaut: f(x) = EQU = y.

Gut, ich habe es mit "x=3" eingebaut:

~plot~ x=-7/3;x=3;x=e ~plot~

Und hier noch deine Grafik oben nachgezeichnet (man muss etwas nach rechts oben verschieben, damit es genauso aussieht):

~plot~ (x-2)^2+3;3;x=2 ~plot~

Die minimale und maximale Höhe der Zeichnung liegt bei y=100.

Soweit gut? =)

Alles klar. Schönen Abend und frohe Feiertage!

Update:

Ihr könnt jetzt "π" oder "pi" in den Formeln schreiben, beides wird akzeptiert.

Direkt nach dem Absenden einer Antwort bzw. eines Kommentars sollten die Graphen jetzt umgewandelt werden.

Test:

~plot~ cos ( ( 1 / 5 ) * π * x ) ~plot~

2 Antworten

0 Daumen
 
Beste Antwort

Interaktivität gefällt mir.

Könnte man vielleicht noch zwei, drei weitere Graphen in der gleichen Zeichnung erlauben ?

Eingabe: f(x) = x^2, g(x) = 2x-4

Nachträgliche Änderungsmöglichkeit für die Skalen, wäre auch schön.

Die vertikalen Tangenten hast du schon angesprochen. Interessant und graphisch "schön" sind die unterschiedlichen Ausschläge bei:

Bild Mathematik

von 162 k 🚀

Hi Lu, mehrere Graphen können nun erstellt werden, einfach per Semikolon trennen:

~plot~ sin(x);x;2^x ~plot~

Die Skalenänderung / Zoom muss noch eingebaut werden. Hier ist es nicht so einfach, denn für einen "eigenständigen klugen" Zoom muss man den Wertebereich des Graphen abschätzen und das Koordinatensystem entsprechend anpassen. Besser wird es sein, einen manuellen Mauszoom einzubauen.

Ich habe gerade noch ein Open-Source-Skript gefunden, das sich Fooplot nennt. Demo: https://www.matheretter.de/tools/fooplot.html

Vorteile von Fooplot:
- Zoom mit Mausrad möglich,
- Koordinatensystem verschiebbar,
- Punkte lassen sich interaktiv auf dem Graphen setzen,
- tan(x) Sprungstellen gelöst
- lädt mit nur 55 KB (unser Skript braucht 300 KB).

Nachteile von Fooplot:
- eingegebene Formeln werden nicht auf Richtigkeit evaluiert,
- man kann das angezeigte Bild nicht direkt als Bild speichern mit rechtem Mausklick,
- keine Achsenpfeile
- Liniendicke scheint nicht veränderbar, nur 1px dünn

Vielleicht sollten wir doch auf Fooplot umsteigen?

Nachteile von Fooplot: 
- eingegebene Formeln werden nicht auf Richtigkeit evaluiert,
 
finde ich nicht schlimm (zeichnet dann vielleicht einfach nicht.
- man kann das angezeigte Bild nicht direkt als Bild speichern mit rechtem Mausklick, 

Das ist ein Nachteil
- keine Achsenpfeile 

schade.

Weiterer Nachteil (?):

Funktionsgleichung ist nicht direkt sichtbar / manipulierbar. Bzw. Ich sehe im Link nicht, wie. Ebenfalls verstehe ich nicht, wie ich dort Punkte setzen soll.

Test: ~plot~ 3 ~plot~

Kann man vertikale Geraden zeichnen?

~plot~ x*(x-3); -x; 3 ~plot~

Wird jetzt immer das Gleiche gezeichnet?

Ich habe jetzt das andere Tool "Fooplot" eingebaut, es ist nun auf der Seite aktiv und lädt mit nur 37 kB blitzschnell.

Das Punkte setzen funktioniert mit gedrückter Maustaste, siehe Demo. Ich habe es aber hier deaktiviert.

Schön: Man kann jetzt die Bühne, also das Koordinatensystem schnell und einfach mit der Maus verschieben plus Zoom per Mausrad.


PS: Ich habe gerade die Zoom-Buttons herausgenommen, denn jedes Mal, wenn man sie drückt, lädt die Seite neu und das Browserfenster springt nach oben (Firefox 36).

Ich habe oben gerade meinen Kommentar bearbeitet (wollte erst etwas üben ohne jedesmal einen neuen Kommentar abzusenden). Bearbeiten ist mir jetzt aus irgendwelchen Gründen nicht mehr möglich. EDIT: Ginge inzwischen wieder; ich mach aber dort nichts mehr.

1. Beispiel oben:

x=3 sollte mir eine vertikale Gerade zeichnen. Macht es aber nicht. y=3 zeichnet übrigens überhaupt nichts.

2. Beispiel oben:

Es wird gar nichts gezeichnet und ausserdem bewegt sich das Bild, wenn man nur schon schnell mit der Maus in die Nähe kommt und eigentlich "scrowlen" möchte.

Warum ist mein erstes Graphenfeld kleiner als das zweite?

EDIT: Demo: Mehr als einen Punkt auf's Mal kann ich dort aber nicht setzen.

Zu 1. Eingabe x=3

Wenn du eine konstante Funktion zeichnen möchtest, f(x) = 3, dann musst du einfach eine "3" notieren.

Eine vertikale Linie kann mit der aktuellen Version nicht gezeichnet werden. Hierfür benötigt man eine Parametergleichung, Beispiel http://fooplot.com/plot/k3e5puzxkr

Zu 2. Das lag an der Falscheingabe.

Das Graphenfeld wurde übrigens kleiner gezeichnet, da das HTML wie folgt aussah: <span><span style="color: rgb(0, 0, 0)">Test: ~ plot ~ 3 ~ plot ~ <br /></span></span> und der Embeder sich an die Größe des darüberliegenden Elements anpasst. Der zu viel gesetzte <span> führte zu einer kleineren Größe, ich habe ihn entfernt, nun orientiert sich der Embeder an der Größe des darüberliegenden <p> (also komplette Zeilenbreite).

Ich habe deine Eingaben oben wie folgt korrigiert:

x=3 → 3

x(x-3); -x; x=3 → x*(x-3); -x; 3

Jetzt klappt es auch damit :)

Weitere Hinweise zum Fooplot-Embed:

Unterstützte Funktionen:
sin(x) cos(x) tan(x) sec(x) csc(x) cot(x) asin(x) acos(x) atan(x) asec(x) acsc(x) acot(x), sinh(x) cosh(x) tanh(x) sech(x) csch(x) coth(x) asinh(x) acosh(x) atanh(x) asech(x) acsch(x) acoth(x), ln(x) log(x) sqrt(x) abs(x) floor(x) ceil(x) u(x)

Min/Max:
min(expression1,expression2,expression3,...)
max(expression1,expression2,expression3,...)

Wurzeln:
sqrt(2) oder x^(1/2), x^(1/3), x^(1/4)

Stückweise Funktionen:
Zum Beispiel f(x) = {x, x<0; x^2, x>0} wäre: (x<0)*x+(x>0)*x^2

Test: ~plot~(x<0)*x+(x>0)*x^2 ~plot~

Quelle: http://fooplot.com/faq


Wichtig, gerade herausgefunden:

Absolute Beträge werden mit abs() erzeugt!

Also -2*|x+1|+4;(x-4)^2-2;1/2*|x-3|+3

ist einzugeben als:

~plot~ -2*abs(x+1)+4;(x-4)^2-2;1/2*abs(x-3)+3 ~plot~

0 Daumen

Ich probiere einmal aus

f ( x ) = ~plot~ x^2 + sin ( x) ~plot~

von 111 k 🚀

beim ersten Verlassen des Editors wurde der Graph noch nicht
gezeichnet. Erschien erst später.

f(x) wurde automatisch hinzugefügt.

Vielen Dank für den Hinweis. "f(x)" wird jetzt nicht mehr gesetzt.

Derzeit muss die Seite noch neu geladen werden, damit die Formel zum Graphen wird.

georgborn: Warum soll denn f(x) nicht gesetzt werden?

x^2 + sin(x) ist keine Funktionsgleichung. Du musst irgendetwas haben, wenigstens y = x^2 + sin(x) , wenn Punkte im Koordinatensystem Sinn machen sollen.

EDIT: Ich weiss, dass WolframAlpha das auch nicht verlangt in der Eingabe. Dort gilt auch die Philosophie: Wir lassen die Maschine mal raten, was der Fragesteller alles gemeint haben könnte.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community