Draws error bars around scatter points.
var shell = require('gl-now')({ clearColor: [0,0,0,0] })
var camera = require('game-shell-orbit-camera')(shell)
var createAxes = require('gl-axes')
var createErrorBars = require('gl-error-bars')
var mat4 = require('gl-mat4')
var bounds = [[-5,-5,-5], [5,5,5]]
var errorbars, axes
shell.on('gl-init', function() {
var gl = shell.gl
camera.lookAt(bounds[1], [0,0,0], [0, 1, 0])
axes = createAxes(gl, {
bounds: bounds
})
errorbars = createErrorBars(gl, {
position: [
[0,0,0],
[0,2,0],
[-2,-3,0]
],
error: [
[[-0.5,-0.5,-0.1], [0.5,0.5,0.5]],
[[0,0,0], [0.5,0.5,0.5]],
[[-0.5,-0.5,0], [0,0,0]]
],
color: [
[1,0,0],
[0,1,0],
[0,0,1]
]
})
})
shell.on('gl-render', function() {
var gl = shell.gl
gl.enable(gl.DEPTH_TEST)
var cameraParameters = {
view: camera.view(),
projection: mat4.perspective(
mat4.create(),
Math.PI/4.0,
shell.width/shell.height,
0.1,
1000.0)
}
axes.draw(cameraParameters)
errorbars.draw(cameraParameters)
})
var errorBars = require('gl-error-bars')(gl, options)Creates a new error bar object.
gl is a WebGL contextobject is a collection of properties which are used to initialize the objectReturns A new error bar object
errorBars.draw(camera)Draws the error bars
camera is an object storing the parameters to draw
camera.model is the model matrixcamera.view is the view matrixcamera.projection is the projection matrixerrorBars.update(options)Updates the error bar object
position is the position of each point in the ploterror is an array of error bounds represented as [lo,hi] for each pointcolor a length 3 array of arrays giving the color of the error bars along each axis.lineWidth is the width of the error bar lines in pixelscapSize is the size of the cap for error barsclipBounds is a box to which all error bars will be clippederrorBars.dispose()Destroy the error bars and release all associated resources
errorBars.boundsBounds on the error bar object for display purposes
(c) 2014 Mikola Lysenko. MIT License