1

如何使用 jsx graph 绘制 f(x) 的图(用户输入)和 f(xa) 的图,其中 a 的值是从滑块接收的?例如,如果用户输入 x x 并且来自滑块的 a 值为 1,那么 jsx 板上将有两个图:一个是 x 的,另一个是 (x-1) (x-1)?

4

1 回答 1

1

从更改文本框中的函数中获取我的答案不会更改图形用户提供f(x)的函数和f(x-a)依赖于滑块的函数的同时绘图可能如下所示:

board = JXG.JSXGraph.initBoard('box', {boundingbox: [-6, 12, 8, -6], axis: true});
a = board.create('slider', [[-4,7], [4,7], [-10, 1,10]], {name:'a'});

doPlot = function() {
    var txtraw = document.getElementById('input').value, // Read user input
        f = board.jc.snippet(txtraw, true, 'x', true), // Parse input with JessieCode
        curve, curve2;

    board.removeObject('f'); // Remove element with name f
    board.removeObject('g'); // Remove element with name g
    curve = board.create('functiongraph', [f, -10, 10], {name:'f'});
    curve2 = board.create('functiongraph', [
        function(x) {
            return f(x - a.Value());
        }, -10, 10], {name:'g', strokeColor: 'red'});
};

doPlot();

这意味着诀窍是定义第二个返回的函数f(x-a)。请参阅https://jsfiddle.net/qmp0qdvv/1/。与上面提到的其他问题一样,此示例允许使用 JSXGraph 的 JessieCode 解析器输入纯数学语法而不是 JavaScript 代码。

于 2016-10-04T11:57:09.170 回答