| <!doctype html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <title>Bar3D Simplex Noise - ECHARTS-GL</title> |
| <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> |
| <meta name="apple-mobile-web-app-capable" content="yes"> |
| <link rel="stylesheet" href="../common/reset.css"> |
| </head> |
| <body> |
| <div id="main"></div> |
| <script src="../common/echarts.min.js"></script> |
| <script src="../common/jquery.min.js"></script> |
| <script src="../common/echarts-gl.js"></script> |
| <script src="../common/simplex.js"></script> |
| <script> |
| var chart = echarts.init(document.getElementById('main')); |
| |
| var noise = new SimplexNoise(Math.random); |
| function generateData(theta, min, max) { |
| var data = []; |
| for (var i = 0; i <= 40; i++) { |
| for (var j = 0; j <= 40; j++) { |
| for (var k = 0; k <= 40; k++) { |
| var value = noise.noise3D(i / 20, j / 20, k / 20); |
| valMax = Math.max(valMax, value); |
| valMin = Math.min(valMin, value); |
| data.push([i, j, k, value * 2 + 4]); |
| } |
| } |
| } |
| return data; |
| } |
| var valMin = Infinity; |
| var valMax = -Infinity; |
| var data = generateData(2, -5, 5); |
| console.log(valMin, valMax); |
| |
| chart.setOption({ |
| visualMap: { |
| show: false, |
| min: 2, |
| max: 6, |
| inRange: { |
| symbolSize: [0.5, 15], |
| color: ['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf', '#fee090', '#fdae61', '#f46d43', '#d73027', '#a50026'], |
| colorAlpha: [0.2, 1] |
| } |
| }, |
| xAxis3D: { |
| type: 'value' |
| }, |
| yAxis3D: { |
| type: 'value' |
| }, |
| zAxis3D: { |
| type: 'value' |
| }, |
| grid3D: { |
| show: false, |
| axisLine: { |
| lineStyle: { color: '#fff' } |
| }, |
| axisPointer: { |
| lineStyle: { color: '#fff' } |
| }, |
| viewControl: { |
| // autoRotate: true |
| } |
| }, |
| series: [{ |
| type: 'scatter3D', |
| data: data |
| }] |
| }); |
| |
| window.onresize = chart.resize; |
| </script> |
| </body> |
| </html> |