HTMLcopy
1
<div id="container"></div>
CSScopy
6
1
html, body, #container {
2
width: 100%;
3
height: 100%;
4
margin: 0;
5
padding: 0;
6
}
JavaScriptcopy
x
1
anychart.onDocumentReady(function() {
2
// create chart
3
chart = anychart.surface()
4
// set data
5
chart.data(generateData(hyperbolicParaboloid));
6
7
// create a linear color scale
8
var colorScale = anychart.scales.linearColor();
9
colorScale.colors(['#2bc0e4', '#eAecc6', '#dd2c00']);
10
11
// set color scale
12
chart.colorScale(colorScale);
13
14
// display chart
15
chart.container('container').draw();
16
});
17
// generate a data set from function
18
var generateData = function(z_function) {
19
var max_val = 5;
20
var step = 0.5;
21
var output = [];
22
for (var x = -max_val; x <= max_val; x += step) {
23
for (var y = -max_val; y <= max_val; y += step) {
24
output.push([x, y, z_function(x, y)]);
25
}
26
}
27
return output;
28
};
29
// hyperbolic paraboloid function
30
var hyperbolicParaboloid = function(x, y) {
31
return Math.pow(y,2)-Math.pow(x,2);
32
};