Published
Edited
Dec 28, 2019
1 star
Hello, PGLiteINSEE ParquetHello, apcachDruidJS workerHello, OrbitWord Tour: 40k words and their friendsHello, spectral.jsHello, petite-vueHello, @thi.ng/grid-iteratorsHello, thumbhashHello, SwissGLHello, QOI (and glitches)Hello, orbHello, cosmographHello, TabulatorUsing d3.blur with PlotMath.cbrtHello debounceColorcetHello, gliiHello, Open MeteoHello, PyWaveletsHello, typesenseHello, libgifHello, kmeans-engineHappy anniversary, Project Gutenberg!Hello, fflateHello, ArchieML!Hello, d3-bboxCollideHello, jsgeoda!Hello, EDTF!Hello, protovis!Hello, placekeyHello, fuse.jsHello, Reorder.jsHello, shadow DOMjszipHello, procedural-glHello, qhullHello, genetic-jsDruidJSHello, Tippy.jsHello, paintWorkletBig πHello, AutoencoderHello, Shakespearean UUIDsHello, ccwt.jsHello, constrainautorHello, talismanHello, polygon-offsetHello p-queueHello async-poolHello rollup-plugin-asciiHello, algebra.jsHello, pixi.jsHello, d3-renderHello zip/unzipCumulative Wikipedia DonationsHTML <details>regl textureHello, npyjsHello protobufHello, pencil touchHello, LOESSHello html2canvaslegra mapscolor2cssHello, ecsy2D point distributionsHello, delatinThe gpu.js loopDijkstra’s shortest-path treeHello nojacko/Dijkstras-jsHello, tcort/dijkstrajsHello, lambdabaa/dijkstraHello, gpu.js v2Hello jsqrHello qrcodeHello SharedArrayBufferHello GamePad APIHello vtk.jsHello nd4jsHello BiofabricTravelling with a self-organizing mapHello glitchHello UMAP-jsHello pandemoniumHello iocaneHello JSON-editorHello d3-griddingHello mljs/knnWorker
Hello lalolib
Image to GPU.jsImage to blink.jsTissot's indicatrixVega projectionsHello WebCLGLUsing d3-inertia with observableVideo contouring 3ngraph: pagerank, louvain…Union-FindPerceptron (simple statistics)mljsHello h3-jsEmoji FlagsHello, poisson-disk-sampling
Also listed in…
Linear Algebra
Insert cell
Insert cell
mljs = require(await FileAttachment("mljs-noglpk-module.js").url())
/* "https://www.doc.gold.ac.uk/~esoer001/mljs-noglpk-module.js" */
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
// we've put mljs-noglpk-module.js and lalolibworker.js together in one file…
lab = new mljs.Lalolab(
"labname",
false,
(await FileAttachment("mljs-noglpk-module-with-worker@3.js").url()) +
"#" /* "https://raw.githack.com/lauerfab/MLweb/master/lalolab/" /*+ "lalolibworker.js"*/
/* path */
)
Insert cell
{
const n = 500; // maximum for eigs() is about n ~= 1300
var A = Array.from({ length: n }, () =>
Array.from({ length: n }, Math.random)
);
return new Promise(resolve => {
lab.load(A, "A");
lab.do('E = eigs(A, 4, "smallest")');
lab.getObject("E", resolve);
});
}
Insert cell
Insert cell
function eigen({ matrix, n, what }) {
return mljs.eigs(matrix, n, what);
}
Insert cell
Insert cell
EIGENWORKER = Generators.queue(
worker(
eigen,
{ matrix: C, n: 3, what: "smallest" },
`
importScripts("https://www.doc.gold.ac.uk/~esoer001/mljs-module_old.min.js");
`
)
)
Insert cell
EIGENWORKER.V
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more