• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Visualisierung Funktionsgraph mit Jsxgraph

Paradox

New member
Hallo zusammen,

ich hoffe mal das ich hier richtig bin. :)
Ich versuche gerade für ein Schulprojekt einen Funktionsgraphen mit Jsxgraph zu erstellen.

Mein Problem hierbei ist es einen Wert wie z.B. 3*Math.pow(x,5)+2 zu übergeben.

In den Beispielen auf der Seite wird der code so angegeben :

Code:
var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-12, 12, 12, -12], axis:true, grid:true});
var graph = board.create('functiongraph', [function(x){ return [B]x+2[/B];}, -10, 10] );

Nur sobald ich versuche x+2 durch eine variable zu ersetzen klappt nichts mehr.

Code:
var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-12, 12, 12, -12], axis:true, grid:true});
var graph = board.create('functiongraph', [function(x){ return [B]funktionsVariable[/B];}, -10, 10] ); // funktionsVariable = "3*Math.pow(x,5)+2"

Die Dokumentation und Beispiele hab ich mir auch schon angesehen, aber geholfen hat's nicht wirklich.

Schonmal vielen Dank für jede Hilfe.

Mfg.
 
Zuletzt bearbeitet:
Code:
var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-12, 12, 12, -12], axis:true, grid:true});
var graph = board.create('functiongraph', [function(x){ return [B]funktionsVariable[/B];}, -10, 10] ); // funktionsVariable = "3*Math.pow(x,5)+2"
ist das gleiche wie
Code:
var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-12, 12, 12, -12], axis:true, grid:true});
var graph = board.create('functiongraph', [function(x){ return [B]"3*Math.pow(x,5)+2"[/B];}, -10, 10] );
und mit dem string kann man keine funktion zeichnen.
aber man kann ein funktionsobjekt auch explizit anlegen und den functionbody als string übergeben
 
Danke für die schnelle Antwort.

Ich versteh zwar den Ansatz, aber leider versteh ich nicht so wirklich wie ich das jetzt in diesem Fall anwenden kann.
 
du übergibst nicht function(x){ return funktionsVariable;}
sondern new Function(x, funktionsVariable)
 
Bei new Function(x, funktionsVariable) bekomme ich die Fehlermeldung : TypeError: this.Y is not a function.
 
Wenn ich das ganze jetzt auf die Art eingebe :

Code:
var funktionsVariable = "x+2";
var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-12, 12, 12, -12], axis:true, grid:true});
var graph = board.create('functiongraph', [new function("x",funktionsVariable), -10, 10] );

ReferenceError: Rechner is not defined
Rechner ist in diesem Fall meine Hauptfunktion.

Ich hab auch mal etwas anderes Probiert, aber das Funktioniert nur, solange da eine einzelne Zahl steht. Sobald ein x, + o.Ä. dazu kommt :
SyntaxError: expected expression, got '<'

Code:
var funktionX = function(x) { return funktionsVariable; };
board.create('functiongraph', [funktionX, -10, 10] );

Ich hab mal hier meinen kompletten Code gepostet. Vielleicht hilft das ja. :)
[JavaScript] TRechner - Pastebin.com
 
var funktionsVariable = "x+2";
da fehlt ein return und ein ; also
var funktionsVariable = "return " + "x+2" + ";";
oder
var funktionsVariable = "x+2";
new Function("x","return " + funktionsVariable + ";")

new Function("x",funktionsVariable)
nicht
new function("x",funktionsVariable)
 
Zurück
Oben