
Security News
How Enterprise Security Is Adapting to AI-Accelerated Threats
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.
gl-scatter3d
Advanced tools
3D WebGL scatter plots with custom point glyphs.
var createScene = require('gl-plot3d')
var createPoints = require('gl-scatter3d')
var scene = createScene()
var initialData = {
gl: scene.gl,
position: [ [1, 0, -1], [0, 1, -1], [0, 0, 1], [1,1,-1], [1,0,1], [0,1,1] ],
glyph: [ "▼", "★", "■", "◆", "✚", "✖" ],
color: [ [0,1,0], [0,0,1], [1,1,0], [1,0,1], [0,1,1], [0,0,0] ],
size: 12,
orthographic: true
}
for(var i=0; i<100; ++i) {
var theta = i / 100.0 * 2.0 * Math.PI
var x = Math.cos(theta)
var y = Math.sin(theta)
initialData.position.push([ x, y, 0 ])
initialData.glyph.push("●")
initialData.color.push([1, 0, 0])
}
var points = createPoints(initialData)
scene.add(points)
npm install gl-scatter3d
var points = require('gl-scatter3d')(options)Constructs a scatter plot with the given parameters. options is an object with the following properties:
gl is a WebGL contextposition (Required) an array of length 3 arrays encoding the position of the points in the scatter plot.color A length 3 array encoding the color of the points in the scatter plot. To set colors per point, pass an array instead. Default is [0,0,0]glyph The glyph of each point. This is a UTF8 string representing some shape. Per point glyphs can be specified by passing an array. The default glyph is a circle, "●". For more glyph ideas, check out the unicode character set. Some other fun suggestions: "☢", "☯", "❤", "▲", "⚑".size The size of each point, or specified per-point using an array. In orthographic, this is in screen coordinates, or in perspective this is in world coordinates. Default is 0.1orthographic A flag, which if set to true causes the points to be drawn without perspective scaling.lineWidth the width of the outline (set to 0 for no outline) Default is 0lineColor the color of the outline for each markerfont the font used for drawing the glyphs (default normal)angle an angle to rotate the glyphs by in radians (default 0)alignment a 2d vector to offset text drawing by (default [0,0])project a flag (or array of flags) which determines which axes to project ontoprojectOpacity the opacity of the projected point sprites (default 1.0)projectScale the scaling factor of the projected point sprites (default 2.0/3.0)Returns A new scatter plot object
points.update(options)Updates the scatter plot object. The parameter options has the same properties as the constructor.
points.opacityThe opacity of the point set (default 1)
points.projectScaleA factor by which projections are rescaled
points.projectOpacityThe opacity of the projected points
points.axesProjectAn array of projection values for each point
points.lineWidthThe width of the outline of each point
(c) 2014-2015 Mikola Lysenko. MIT License. Supported by plot.ly
FAQs
3D scatter plot
The npm package gl-scatter3d receives a total of 21,950 weekly downloads. As such, gl-scatter3d popularity was classified as popular.
We found that gl-scatter3d demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 19 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.