Continuous functions: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<html>
<jsxgraph width="600" height="500" box="box">
<link rel="stylesheet" type="text/css" href="http://jsxgraph.uni-bayreuth.de/distrib/jsxgraph.css" />
  var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-4, 6, 6, -4], axis: true});
<script type="text/javascript" src="http://jsxgraph.uni-bayreuth.de/distrib/jsxgraphcore.js"></script>
<div id="box" class="jxgbox" style="width:600px; height:500px;"></div>
<script language="JavaScript">
  board = JXG.JSXGraph.initBoard('box', {originX: 300, originY: 300, unitX: 50, unitY: 50});
  board.suspendUpdate();
  board.suspendUpdate();
b1axisx = board.createElement('axis', [[0,0], [1,0]], {});
b1axisy = board.createElement('axis', [[0,0], [0,1]], {});


  var f = function(x) {
  var f = function(x) {
Line 16: Line 10:
       }
       }
       };
       };
  graph = board.createElement('functiongraph', [f], {strokeColor:'#00ff00'});
  var graph = board.create('functiongraph', [f], {strokeColor:'#0000ff'});


  s = board.createElement('slider', [[0,-1],[4,-1],[0,1,1]],{name:'&epsilon;'});
  var s = board.create('slider', [[0,-1],[4,-1],[0,1,1]],{name:'&delta;'});


  x1 = board.createElement('glider', [-2,0,b1axisx],{name:'a'});
  var x1 = board.create('glider', [-2,0,board.defaultAxes.x],{name:'a'});
  x2 = board.createElement('point', [function(){return x1.X()-s.Value();},0],{style:7,name:' '});
  board.suspendUpdate();
  x3 = board.createElement('point', [function(){return x1.X()+s.Value();},0],{style:7,name:' '});
var x2 = board.create('point', [function(){return x1.X()-s.Value();},0],{size:2,face:'[]',name:' '});
  y1 = board.createElement('point', [function(){return x1.X();},function(){return f(x1.X());}],{style:7,name:'f(a)'});
  var x3 = board.create('point', [function(){return x1.X()+s.Value();},0],{size:2,face:'[]',name:' '});
  y2 = board.createElement('point', [function(){return x2.X();},function(){return f(x2.X());}],{style:7,name:' '});
  var y1 = board.create('point', [function(){return x1.X();},function(){return f(x1.X());}],{size:2,face:'[]',name:'f(a)'});
  y3 = board.createElement('point', [function(){return x3.X();},function(){return f(x3.X());}],{style:7,name:' '});
  var y2 = board.create('point', [function(){return x2.X();},function(){return f(x2.X());}],{size:2,face:'[]',name:' '});
  v1 = board.createElement('line', [x1,y1],{strokeColor:'gray',dash:2,strokeWidth:1,straightFirst:false,straightLast:false});
  var y3 = board.create('point', [function(){return x3.X();},function(){return f(x3.X());}],{size:2,face:'[]',name:' '});
  v2 = board.createElement('line', [x2,y2],{strokeColor:'gray',dash:2,strokeWidth:1});
  var v1 = board.create('segment', [x1,y1],{strokeColor:'gray',dash:2,strokeWidth:1});
  v3 = board.createElement('line', [x3,y3],{strokeColor:'gray',dash:2,strokeWidth:1});
  var v2 = board.create('line', [x2,y2],{strokeColor:'gray',dash:2,strokeWidth:1});
  var v3 = board.create('line', [x3,y3],{strokeColor:'gray',dash:2,strokeWidth:1});


  h1 = board.createElement('curve', [function(t){return t},function(t){return y1.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  var h1 = board.create('curve', [function(t){return t},function(t){return y1.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  h2 = board.createElement('curve', [function(t){return t},function(t){return y2.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  var h2 = board.create('curve', [function(t){return t},function(t){return y2.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  h3 = board.createElement('curve', [function(t){return t},function(t){return y3.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  var h3 = board.create('curve', [function(t){return t},function(t){return y3.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
board.unsuspendUpdate();


</script>
var txt = board.create('text', [4.2, -1.5, function() {
</html>
            return '&epsilon; = ' + Math.max(Math.abs(y2.Y() - y1.Y()), Math.abs(y1.Y() - y3.Y())).toFixed(5);
          }], {strokeColor: 'blue'});
board.unsuspendUpdate();
</jsxgraph>


=== References ===
=== References ===
Line 45: Line 42:


<source lang="javascript">
<source lang="javascript">
  board = JXG.JSXGraph.initBoard('box', {originX: 300, originY: 300, unitX: 50, unitY: 50});
  var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-4, 6, 6, -4], axis: true});
  board.suspendUpdate();
  board.suspendUpdate();
b1axisx = board.createElement('axis', [[0,0], [1,0]], {});
b1axisy = board.createElement('axis', [[0,0], [0,1]], {});


  var f = function(x) {
  var f = function(x) {
Line 57: Line 52:
       }
       }
       };
       };
  graph = board.createElement('functiongraph', [f], {strokeColor:'#00ff00'});
  var graph = board.create('functiongraph', [f], {strokeColor:'#0000ff'});


  s = board.createElement('slider', [[0,-1],[4,-1],[0,1,1]],{name:'&epsilon;'});
  var s = board.create('slider', [[0,-1],[4,-1],[0,1,1]],{name:'&delta;'});
 
var x1 = board.create('glider', [-2,0,board.defaultAxes.x],{name:'a'});
board.suspendUpdate();
var x2 = board.create('point', [function(){return x1.X()-s.Value();},0],{size:2,face:'[]',name:' '});
var x3 = board.create('point', [function(){return x1.X()+s.Value();},0],{size:2,face:'[]',name:' '});
var y1 = board.create('point', [function(){return x1.X();},function(){return f(x1.X());}],{size:2,face:'[]',name:'f(a)'});
var y2 = board.create('point', [function(){return x2.X();},function(){return f(x2.X());}],{size:2,face:'[]',name:' '});
var y3 = board.create('point', [function(){return x3.X();},function(){return f(x3.X());}],{size:2,face:'[]',name:' '});
var v1 = board.create('segment', [x1,y1],{strokeColor:'gray',dash:2,strokeWidth:1});
var v2 = board.create('line', [x2,y2],{strokeColor:'gray',dash:2,strokeWidth:1});
var v3 = board.create('line', [x3,y3],{strokeColor:'gray',dash:2,strokeWidth:1});


  x1 = board.createElement('glider', [-2,0,b1axisx],{name:'a'});
  var h1 = board.create('curve', [function(t){return t},function(t){return y1.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
x2 = board.createElement('point', [function(){return x1.X()-s.Value();},0],{style:7,name:' '});
  var h2 = board.create('curve', [function(t){return t},function(t){return y2.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
x3 = board.createElement('point', [function(){return x1.X()+s.Value();},0],{style:7,name:' '});
  var h3 = board.create('curve', [function(t){return t},function(t){return y3.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  y1 = board.createElement('point', [function(){return x1.X();},function(){return f(x1.X());}],{style:7,name:'f(a)'});
y2 = board.createElement('point', [function(){return x2.X();},function(){return f(x2.X());}],{style:7,name:' '});
  y3 = board.createElement('point', [function(){return x3.X();},function(){return f(x3.X());}],{style:7,name:' '});
v1 = board.createElement('line', [x1,y1],{strokeColor:'gray',dash:2,strokeWidth:1,straightFirst:false,straightLast:false});
v2 = board.createElement('line', [x2,y2],{strokeColor:'gray',dash:2,strokeWidth:1});
v3 = board.createElement('line', [x3,y3],{strokeColor:'gray',dash:2,strokeWidth:1});


  h1 = board.createElement('curve', [function(t){return t},function(t){return y1.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
  var txt = board.create('text', [4.2, -1.5, function() {
h2 = board.createElement('curve', [function(t){return t},function(t){return y2.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
            return '&epsilon; = ' + Math.max(Math.abs(y2.Y() - y1.Y()), Math.abs(y1.Y() - y3.Y())).toFixed(5);  
h3 = board.createElement('curve', [function(t){return t},function(t){return y3.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
          }], {strokeColor: 'blue'});
  board.unsuspendUpdate();
  board.unsuspendUpdate();
</source>
</source>

Latest revision as of 19:02, 7 January 2019

References

The underlying JavaScript source code

 var board = JXG.JSXGraph.initBoard('box', {boundingbox: [-4, 6, 6, -4], axis: true});
 board.suspendUpdate();

 var f = function(x) {
       if (x<1) {
          return 0.5*x*x;
       } else {
         return x+1;
       }
      };
 var graph = board.create('functiongraph', [f], {strokeColor:'#0000ff'});

 var s = board.create('slider', [[0,-1],[4,-1],[0,1,1]],{name:'&delta;'});

 var x1 = board.create('glider', [-2,0,board.defaultAxes.x],{name:'a'});
 board.suspendUpdate();
 var x2 = board.create('point', [function(){return x1.X()-s.Value();},0],{size:2,face:'[]',name:' '});
 var x3 = board.create('point', [function(){return x1.X()+s.Value();},0],{size:2,face:'[]',name:' '});
 var y1 = board.create('point', [function(){return x1.X();},function(){return f(x1.X());}],{size:2,face:'[]',name:'f(a)'});
 var y2 = board.create('point', [function(){return x2.X();},function(){return f(x2.X());}],{size:2,face:'[]',name:' '});
 var y3 = board.create('point', [function(){return x3.X();},function(){return f(x3.X());}],{size:2,face:'[]',name:' '});
 var v1 = board.create('segment', [x1,y1],{strokeColor:'gray',dash:2,strokeWidth:1});
 var v2 = board.create('line', [x2,y2],{strokeColor:'gray',dash:2,strokeWidth:1});
 var v3 = board.create('line', [x3,y3],{strokeColor:'gray',dash:2,strokeWidth:1});

 var h1 = board.create('curve', [function(t){return t},function(t){return y1.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
 var h2 = board.create('curve', [function(t){return t},function(t){return y2.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});
 var h3 = board.create('curve', [function(t){return t},function(t){return y3.Y();}], {strokeColor:'gray',dash:2,strokeWidth:1});

 var txt = board.create('text', [4.2, -1.5, function() {
            return '&epsilon; = ' + Math.max(Math.abs(y2.Y() - y1.Y()), Math.abs(y1.Y() - y3.Y())).toFixed(5); 
           }], {strokeColor: 'blue'});
 board.unsuspendUpdate();