diff --git a/bun.lockb b/bun.lockb index 388cbd8..d493c2c 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/notebooks/assets/X_Y_Sinusoid_Data.csv b/notebooks/assets/X_Y_Sinusoid_Data.csv new file mode 100644 index 0000000..ac14e6e --- /dev/null +++ b/notebooks/assets/X_Y_Sinusoid_Data.csv @@ -0,0 +1,21 @@ +x,y +0.03857092316235833,0.06639132321684607 +0.16677634653232146,1.0274832977473267 +0.1831527336532205,1.2453018088581933 +0.1873586470614216,1.0047814627724303 +0.2431156753134085,1.2641206967402017 +0.2892992815482438,0.4983300116283211 +0.3428052291614103,0.5975017977451754 +0.3454986400504001,0.629410260984959 +0.3864771696146654,0.8227045670178283 +0.4300468142111865,0.5575805722415722 +0.4844984551528021,0.5650526186807526 +0.4919289392847462,-0.3932219581301353 +0.6149324753622187,-0.912891706931243 +0.6380539847173851,-1.1282498703551047 +0.6977363851237776,-1.1104554694371696 +0.7024274240680553,-0.5703425644056388 +0.7290856206264126,-0.6202092269771708 +0.8734008431011248,-0.8732355889131802 +0.8980071182251496,-0.18747150111083224 +0.9509640316267164,-0.02581538043416365 diff --git a/notebooks/deno_tinygo_wasm.ipynb b/notebooks/deno_tinygo_wasm.ipynb index c76e9bc..a92beec 100644 --- a/notebooks/deno_tinygo_wasm.ipynb +++ b/notebooks/deno_tinygo_wasm.ipynb @@ -1,94 +1,71 @@ { "cells": [ { - "cell_type": "code", - "execution_count": 1, + "cell_type": "markdown", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Stats initialized\n", - "\n", - "Linear Regression Line:\n", - "\tEstimated offset is: -2.258540\n", - "\tEstimated slope is: -0.024285\n", - "\tR^2 is: 0.882633\n" - ] - } - ], "source": [ - "import stats from \"../stat/mod.ts\";\n", + "# Regressions\n", "\n", - "const xs = [];\n", - "const ys = [];\n", + "$X = (0,1)$\n", "\n", - "for (let i = 0; i < 100; i++) {\n", - " xs.push(i);\n", - " ys.push(1 - Math.log(2 * i + 3 + Math.random() * 10));\n", - "}\n", - "\n", - "const linreg = stats.LinearRegression(xs, ys, [], false);\n", - "const r = stats.RSquared(xs, ys, [], linreg.alpha, linreg.beta);\n", - "\n", - "console.log(\"\\nLinear Regression Line:\");\n", - "console.log(\"\\tEstimated offset is: \", linreg.alpha.toFixed(6));\n", - "console.log(\"\\tEstimated slope is: \", linreg.beta.toFixed(6));\n", - "console.log(\"\\tR^2 is: \", r.toFixed(6));" + "$Y = sin(2\\pi X)$" ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/markdown": [ - "![name](data:image/png;base64,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)" + "![name](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqAAAAGACAIAAAD9Gkc5AABXGElEQVR4nOzdB3RUddo/8Gd6S5vJzKT30AIJ3YTQRYRVREUsgIorLui6suwuun91dZFd993XtrbXLeoCghJEpAsooKAQmkAIKZSUSS+TPkmmz/9MhgwQQkiZmTvl+zlzOHPv3Ln3SbiZZ36da7FYCAAAALwLl+kAAHyORqPx8/O7do/JZOJwOC64dLcX2rt374EDByQSyapVq1wQAwC4BpvpAAB8RVVV1cKFC++5557f/e5399xzz/Dhw8+ePWt7afLkycuWLXN2ACqVKjAwcNeuXV32z549OzQ0dNOmTV32f/vttw8++KBIJJo0adJdd901ocOiRYt+/vlnZ4cKAAOHBA/gIo899lhiYuLOnTs//vjjnTt3Llq0qLGx0fbS008//eCDDzo7gNDQ0JUrV44ePbqXx995553PPvusVqv961//+s0332RmZu7bty8kJCQ1NfXPf/5zz+/dvXu30Wh0RNQA0E+oogdwBYvFcvjw4UWLFtn3LFiwgM/n254//vjjN3sXi8Xq5flvPLLLToFAcGMlvO0YNpvdbXcc29vtJwkICHjnnXeMRuNf//rX2bNnT5gwodtgdDrdU089VVxczOXiEwaAMSjBA7gCi8WKi4t79dVXDx8+bNsTFxcXERFBRPv3758zZ85vf/tbIrp06dIjjzxy3333vfDCCyNGjBCLxbaUfOLEiblz5z777LNEVFRU9Lvf/S45Obm9vZ2Ivvzyy/T09CeeeGLatGk7d+605ex333139uzZtp0ffvih7YoffvjhmDFjtm/fbtu8ePHizJkz77777ieffPLLL7/s9puELet3yf2rV682m82fffYZETU0NEyZMmXBggW33377Pffc09raWl1d/cQTT1RVVT322GNvvPEGEf3nP/+ZOXPmY489lpycvHbtWuf/sgGggwUAXGLfvn22vnXDhw9/++23W1pa7C8tWbLk3nvvtT1ftWpVSkqKVqs1m82rVq1is9kajcZisTz99NNz5syxHfPTTz/ZOusZDAaxWHzq1CmLxVJYWLhjxw6LxfLFF19ERkba3lVbWxsUFPTVV1/Z3hgcHLxmzRqLxaLX62NjY1etWmXb/9Zbbw0dOvTGmH/44Qci+uGHH7rsj4yMnD59usViqamp+eijjywW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)" ] }, - "execution_count": 7, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "import plot from \"../plot/mod.ts?6\";\n", + "// deno-lint-ignore-file\n", "\n", - "plot.DrawPlot(\n", - " { \n", - " title: \"Test\", \n", - " //XLabel: \"X\", \n", - " YLabel: \"Y\", \n", - " width: 7.5, \n", - " height: 5 \n", - " }, \n", - " { type: \"scatter\", data: [xs, ys], legend: \"Data\", glyphStyleColor: \"#ff0000\" },\n", - " { type: \"line\", data: [xs, ys], legend: \"Line\", lineStyleColor: \"#00ff00\" },\n", - ");\n" + "import { display } from \"https://deno.land/x/display@v0.1.1/mod.ts\";\n", + "import pl from \"npm:nodejs-polars\";\n", + "import plot from \"../plot/mod.ts\";\n", + "\n", + "const data = await Deno.readTextFile(\"assets/X_Y_Sinusoid_Data.csv\");\n", + "const df = pl.readCSV(data, { sep: \",\" });\n", + "\n", + "const real = pl.DataFrame({ x: new Array(100).fill(0).map((_, i) => i / 100)}).select(\n", + " pl.col('x'),\n", + " pl.col('x').mul(2).mul(3.14).sin().alias('y')\n", + ");\n", + "\n", + "const draw = (x, y, title = \"Sinusoid Data\") => \n", + " plot.DrawPlot(\n", + " { \n", + " title,\n", + " width: 7,\n", + " height: 4,\n", + " XLabel: \"X\", \n", + " YLabel: \"Y\", \n", + " }, \n", + " { type: \"line\", data: [real.x, real.y], legend: \"Sinusoid\", lineDashes: [3, 4], lineColor: \"#ff8888\", lineWidth: 1 },\n", + " { type: \"scatter\", data: [x, y], legend: \"Data\", lineDashes: [3, 4], lineWidth: 2, glyphColor: \"#4444ff\", glyphShape: \"circle\" },\n", + " { type: \"trend\", data: [x, y], legend: \"Trend\", lineDashes: [4, 2], lineColor: '#aacccc', lineWidth: .5 },\n", + " );\n", + "\n", + "\n", + "draw(df.x, df.y);" ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{ alpha: \u001b[33m-2.258539916346346\u001b[39m, beta: \u001b[33m-0.02428470043839821\u001b[39m }" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "stats.LinearRegression(xs, ys, [], false);" - ] + "outputs": [], + "source": [] } ], "metadata": { diff --git a/package.json b/package.json index 9d909d2..10d41a3 100644 --- a/package.json +++ b/package.json @@ -7,5 +7,8 @@ }, "peerDependencies": { "typescript": "^5.0.0" + }, + "dependencies": { + "nodejs-polars": "^0.15.0" } } diff --git a/plot/mod.wasm b/plot/mod.wasm index 56f147f..b4c33f7 100755 Binary files a/plot/mod.wasm and b/plot/mod.wasm differ diff --git a/plot/src/Plot.go b/plot/src/Plot.go index 0ec3d15..7e409a6 100644 --- a/plot/src/Plot.go +++ b/plot/src/Plot.go @@ -86,6 +86,8 @@ func PlotterLinesFromJSObject(object js.Value, plt *plot.Plot, plotters *[]plot. g.Shape = draw.PlusGlyph{} case "ring": g.Shape = draw.RingGlyph{} + case "circle": + g.Shape = draw.CircleGlyph{} case "square": g.Shape = draw.SquareGlyph{} case "triangle": @@ -172,7 +174,7 @@ func PlotterLinesFromJSObject(object js.Value, plt *plot.Plot, plotters *[]plot. if legend != "" { plt.Legend.Add(legend, l, lp) } - case "fitLinear": + case "trend": X := make([]float64, len(XYs)) Y := make([]float64, len(XYs)) min := XYs[0].Y diff --git a/regr/main.go b/regr/main.go new file mode 100644 index 0000000..6dfb09d --- /dev/null +++ b/regr/main.go @@ -0,0 +1,22 @@ +//go:build js && wasm +// +build js,wasm + +package main + +import ( + "l12.xyz/x/shortcuts/regr/src" + + "syscall/js" +) + +func InitRegrExports(this js.Value, args []js.Value) interface{} { + exports := args[0] + exports.Set("ABCD", js.FuncOf(src.ABCD)) + return nil +} + +func main() { + c := make(chan struct{}, 0) + js.Global().Set("__InitRegrExports", js.FuncOf(InitRegrExports)) + <-c +} diff --git a/regr/src/Linear.go b/regr/src/Linear.go new file mode 100644 index 0000000..30cac26 --- /dev/null +++ b/regr/src/Linear.go @@ -0,0 +1,16 @@ +//go:build js && wasm +// +build js,wasm + +package src + +import "syscall/js" + +// ref: mat.Dense +// fit: solve least squares +// predict: predict y from x +// save: save model +// load: load model +// note: separate wasm/js glue +func ABCD(this js.Value, args []js.Value) interface{} { + return nil +}