runmat 0.4.10-dev.7 → 0.4.10-dev.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/stdlib.snapshot +0 -0
- package/dist/generated/builtin-examples-catalog.d.ts.map +1 -1
- package/dist/generated/builtin-examples-catalog.js +1 -1
- package/dist/generated/builtin-examples-catalog.js.map +1 -1
- package/dist/generated/builtins/scatterplot.d.ts +4 -0
- package/dist/generated/builtins/scatterplot.d.ts.map +1 -0
- package/dist/generated/builtins/scatterplot.js +115 -0
- package/dist/generated/builtins/scatterplot.js.map +1 -0
- package/dist/generated/builtins-manifest.d.ts.map +1 -1
- package/dist/generated/builtins-manifest.js +23 -0
- package/dist/generated/builtins-manifest.js.map +1 -1
- package/dist/lsp/runmat_lsp.d.ts +3 -3
- package/dist/lsp/runmat_lsp.js +7 -7
- package/dist/lsp/runmat_lsp_bg.wasm +0 -0
- package/dist/lsp/runmat_lsp_bg.wasm.d.ts +3 -3
- package/dist/pkg-web/runmat_wasm_web.d.ts +2 -2
- package/dist/pkg-web/runmat_wasm_web.js +7 -7
- package/dist/pkg-web/runmat_wasm_web_bg.wasm +0 -0
- package/dist/pkg-web/runmat_wasm_web_bg.wasm.d.ts +2 -2
- package/dist/runtime/stdlib.snapshot +0 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scatterplot.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/scatterplot.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA8GjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "scatterplot",
|
|
5
|
+
"category": "communications/plotting",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"scatterplot",
|
|
8
|
+
"constellation diagram",
|
|
9
|
+
"communications toolbox",
|
|
10
|
+
"complex baseband",
|
|
11
|
+
"qam",
|
|
12
|
+
"psk",
|
|
13
|
+
"scatter"
|
|
14
|
+
],
|
|
15
|
+
"summary": "Plot complex-baseband samples as a 2-D constellation diagram.",
|
|
16
|
+
"gpu_support": {
|
|
17
|
+
"elementwise": false,
|
|
18
|
+
"reduction": false,
|
|
19
|
+
"precisions": [
|
|
20
|
+
"single",
|
|
21
|
+
"double"
|
|
22
|
+
],
|
|
23
|
+
"broadcasting": "none",
|
|
24
|
+
"notes": "`scatterplot` is a rendering sink. When GPU-resident samples can be split into real and imaginary buffers without decimation, RunMat forwards those buffers to the existing GPU scatter renderer. Decimated or unsupported inputs gather once and render through the same scatter semantics."
|
|
25
|
+
},
|
|
26
|
+
"fusion": {
|
|
27
|
+
"elementwise": false,
|
|
28
|
+
"reduction": false,
|
|
29
|
+
"max_inputs": 1,
|
|
30
|
+
"constants": "inline"
|
|
31
|
+
},
|
|
32
|
+
"requires_feature": null,
|
|
33
|
+
"tested": {
|
|
34
|
+
"unit": "builtins::plotting::scatterplot::tests",
|
|
35
|
+
"integration": "scatter GPU/rendering coverage is inherited from builtins::plotting::scatter and runmat-plot renderer tests"
|
|
36
|
+
},
|
|
37
|
+
"description": "`scatterplot` visualizes complex-baseband samples by plotting `real(x)` on the x-axis and `imag(x)` on the y-axis. It mirrors the MATLAB Communications Toolbox call forms for decimation, offset, marker styling, and target axes while using RunMat's shared `scatter` renderer and graphics-handle model.",
|
|
38
|
+
"behaviors": [
|
|
39
|
+
"`scatterplot(x)` plots every complex sample using a constellation-friendly default marker.",
|
|
40
|
+
"`scatterplot(x, n)` plots every `n`-th sample.",
|
|
41
|
+
"`scatterplot(x, n, offset)` starts at the zero-based offset before applying decimation, matching MATLAB's `x(offset+1:n:end)` behavior.",
|
|
42
|
+
"`scatterplot(x, n, offset, marker)` forwards the marker LineSpec to `scatter`.",
|
|
43
|
+
"`scatterplot(x, n, offset, marker, ax)` targets an existing axes handle.",
|
|
44
|
+
"The generated plot uses equal x/y scaling and grid lines so constellation geometry is not visually distorted."
|
|
45
|
+
],
|
|
46
|
+
"examples": [
|
|
47
|
+
{
|
|
48
|
+
"description": "Plot a simple QPSK constellation",
|
|
49
|
+
"input": "x = [1+1i; -1+1i; -1-1i; 1-1i];\nscatterplot(x);"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"description": "Plot every fourth received sample with a custom marker",
|
|
53
|
+
"input": "rx = randn(1000, 1) + 1i*randn(1000, 1);\nscatterplot(rx, 4, 0, 'gx');"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"description": "Target a subplot axes",
|
|
57
|
+
"input": "ax = subplot(1, 2, 1);\nx = [1+1i; 1-1i; -1+1i; -1-1i];\nscatterplot(x, 1, 0, 'b.', ax);"
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"faqs": [
|
|
61
|
+
{
|
|
62
|
+
"question": "How is scatterplot different from scatter?",
|
|
63
|
+
"answer": "`scatterplot` is specialized for complex symbols. It derives x/y coordinates from the real and imaginary parts of one input vector, applies Communications Toolbox decimation/offset arguments, and configures the axes for constellation viewing. `scatter` expects explicit x and y coordinate arrays."
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"question": "Does scatterplot support gpuArray inputs?",
|
|
67
|
+
"answer": "Yes. For the no-decimation case, RunMat asks the acceleration provider for real and imaginary GPU buffers and forwards them to the GPU scatter renderer. When decimation is requested or the provider cannot expose those buffers, RunMat gathers the samples once and renders the same visible plot."
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"links": [
|
|
71
|
+
{
|
|
72
|
+
"label": "scatter",
|
|
73
|
+
"url": "./scatter"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"label": "plot",
|
|
77
|
+
"url": "./plot"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"label": "real",
|
|
81
|
+
"url": "./real"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"label": "imag",
|
|
85
|
+
"url": "./imag"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"label": "Styling plots and axes",
|
|
89
|
+
"url": "/docs/plotting/styling-plots-and-axes"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"label": "GPU plotting and residency",
|
|
93
|
+
"url": "/docs/plotting/gpu-plotting-and-residency"
|
|
94
|
+
}
|
|
95
|
+
],
|
|
96
|
+
"source": {
|
|
97
|
+
"label": "`crates/runmat-runtime/src/builtins/plotting/ops/scatterplot.rs`",
|
|
98
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/plotting/ops/scatterplot.rs"
|
|
99
|
+
},
|
|
100
|
+
"gpu_residency": "`scatterplot` preserves GPU residency for the common `scatterplot(x)` path when the active provider can materialize real and imaginary buffers on device. Decimation and provider gaps fall back to one host gather, after which the same `scatter` handle and axes behavior apply.",
|
|
101
|
+
"gpu_behavior": [
|
|
102
|
+
"The direct path reuses the existing 2-D scatter WGPU renderer and avoids an extra host round-trip for supported GPU inputs.",
|
|
103
|
+
"Decimated sample selection is currently performed on the host to preserve MATLAB-compatible offset semantics.",
|
|
104
|
+
"Marker styling, axes targeting, grid, and equal-axis behavior are consistent between GPU and host fallback rendering."
|
|
105
|
+
],
|
|
106
|
+
"key": "scatterplot",
|
|
107
|
+
"slug": "scatterplot",
|
|
108
|
+
"aliases": [],
|
|
109
|
+
"categoryPath": [
|
|
110
|
+
"communications",
|
|
111
|
+
"plotting"
|
|
112
|
+
]
|
|
113
|
+
};
|
|
114
|
+
export default builtinDoc;
|
|
115
|
+
//# sourceMappingURL=scatterplot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scatterplot.js","sourceRoot":"","sources":["../../../src/generated/builtins/scatterplot.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,aAAa;IACtB,UAAU,EAAE,yBAAyB;IACrC,UAAU,EAAE;QACV,aAAa;QACb,uBAAuB;QACvB,wBAAwB;QACxB,kBAAkB;QAClB,KAAK;QACL,KAAK;QACL,SAAS;KACV;IACD,SAAS,EAAE,+DAA+D;IAC1E,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE;YACZ,QAAQ;YACR,QAAQ;SACT;QACD,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,8RAA8R;KACxS;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;KACtB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,wCAAwC;QAChD,aAAa,EAAE,6GAA6G;KAC7H;IACD,aAAa,EAAE,8SAA8S;IAC7T,WAAW,EAAE;QACX,4FAA4F;QAC5F,gDAAgD;QAChD,yIAAyI;QACzI,gFAAgF;QAChF,0EAA0E;QAC1E,+GAA+G;KAChH;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,kCAAkC;YACjD,OAAO,EAAE,kDAAkD;SAC5D;QACD;YACE,aAAa,EAAE,wDAAwD;YACvE,OAAO,EAAE,wEAAwE;SAClF;QACD;YACE,aAAa,EAAE,uBAAuB;YACtC,OAAO,EAAE,0FAA0F;SACpG;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,4CAA4C;YACxD,QAAQ,EAAE,0SAA0S;SACrT;QACD;YACE,UAAU,EAAE,2CAA2C;YACvD,QAAQ,EAAE,uSAAuS;SAClT;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,WAAW;SACnB;QACD;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,wBAAwB;YACjC,KAAK,EAAE,uCAAuC;SAC/C;QACD;YACE,OAAO,EAAE,4BAA4B;YACrC,KAAK,EAAE,2CAA2C;SACnD;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,kEAAkE;QAC3E,KAAK,EAAE,+GAA+G;KACvH;IACD,eAAe,EAAE,qRAAqR;IACtS,cAAc,EAAE;QACd,6HAA6H;QAC7H,+GAA+G;QAC/G,uHAAuH;KACxH;IACD,KAAK,EAAE,aAAa;IACpB,MAAM,EAAE,aAAa;IACrB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,gBAAgB;QAChB,UAAU;KACX;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtins-manifest.d.ts","sourceRoot":"","sources":["../../src/generated/builtins-manifest.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,eAAO,MAAM,eAAe,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"builtins-manifest.d.ts","sourceRoot":"","sources":["../../src/generated/builtins-manifest.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,eAAO,MAAM,eAAe,EAAE,oBAAoB,EAu1QjD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAua9D,CAAC;AAEF,eAAO,MAAM,4BAA4B,sEAC0C,CAAC"}
|
|
@@ -6598,6 +6598,28 @@ export const builtinManifest = [
|
|
|
6598
6598
|
"summary": "Create 3-D scatter plots for spatial point clouds, encoded markers, and MATLAB `scatter3` workflows.",
|
|
6599
6599
|
"exampleCount": 4
|
|
6600
6600
|
},
|
|
6601
|
+
{
|
|
6602
|
+
"key": "scatterplot",
|
|
6603
|
+
"title": "scatterplot",
|
|
6604
|
+
"slug": "scatterplot",
|
|
6605
|
+
"aliases": [],
|
|
6606
|
+
"category": "communications/plotting",
|
|
6607
|
+
"categoryPath": [
|
|
6608
|
+
"communications",
|
|
6609
|
+
"plotting"
|
|
6610
|
+
],
|
|
6611
|
+
"keywords": [
|
|
6612
|
+
"scatterplot",
|
|
6613
|
+
"constellation diagram",
|
|
6614
|
+
"communications toolbox",
|
|
6615
|
+
"complex baseband",
|
|
6616
|
+
"qam",
|
|
6617
|
+
"psk",
|
|
6618
|
+
"scatter"
|
|
6619
|
+
],
|
|
6620
|
+
"summary": "Plot complex-baseband samples as a 2-D constellation diagram.",
|
|
6621
|
+
"exampleCount": 3
|
|
6622
|
+
},
|
|
6601
6623
|
{
|
|
6602
6624
|
"key": "second",
|
|
6603
6625
|
"title": "second",
|
|
@@ -8840,6 +8862,7 @@ export const builtinDocLoaders = {
|
|
|
8840
8862
|
"sawtooth": () => import("./builtins/sawtooth.js").then((mod) => mod.default),
|
|
8841
8863
|
"scatter": () => import("./builtins/scatter.js").then((mod) => mod.default),
|
|
8842
8864
|
"scatter3": () => import("./builtins/scatter3.js").then((mod) => mod.default),
|
|
8865
|
+
"scatterplot": () => import("./builtins/scatterplot.js").then((mod) => mod.default),
|
|
8843
8866
|
"second": () => import("./builtins/second.js").then((mod) => mod.default),
|
|
8844
8867
|
"semilogx": () => import("./builtins/semilogx.js").then((mod) => mod.default),
|
|
8845
8868
|
"semilogy": () => import("./builtins/semilogy.js").then((mod) => mod.default),
|