.md →
TangleLatex API#
Bases: AnyWidget
Render a KaTeX formula with draggable named numeric parameters.
Put \tangle{name} markers in latex and configure each name in
parameters. A parameter can display its formatted number directly or
remain symbolic until it is dragged or edited. Repeated markers share one
value and update together.
Examples:
import marimo as mo
from wigglystuff import TangleLatex
formula = mo.ui.anywidget(
TangleLatex(
latex=r"f(x) = angle{a}x^2 + angle{b}x + angle{a}",
parameters={
"a": {
"value": 2.5,
"min_value": -5,
"max_value": 5,
"step": 0.1,
"display": "symbol",
},
"b": {
"value": 1,
"min_value": -10,
"max_value": 10,
"step": 0.5,
"display": "symbol",
},
},
reveal_all_on_drag=True,
)
)
formula
Create a TangleLatex widget.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
latex
|
str
|
KaTeX source containing one or more |
required |
parameters
|
Mapping[str, Mapping[str, Any]]
|
Mapping from marker name to its numeric configuration.
|
required |
display_mode
|
bool
|
Render using KaTeX display mode. |
True
|
editor
|
str
|
Numeric click editor style: |
'popover'
|
reveal_all_on_drag
|
bool
|
Reveal every symbolic parameter as a number while any parameter is actively dragged. When false, reveal only the selected parameter. |
False
|
theme
|
str
|
Color theme: |
'auto'
|
**kwargs
|
Any
|
Forwarded to |
{}
|
Source code in wigglystuff/tangle_latex.py
Synced traitlets#
| Traitlet | Type | Notes |
|---|---|---|
latex |
str |
LaTeX source containing \tangle{name} markers. |
parameters |
dict |
Per-parameter config (value, bounds, step, digits, color, symbol, ...). |
values |
dict |
Live current value for each parameter; updates while dragging. |
display_mode |
bool |
Render the formula in display mode. |
editor |
str |
Exact-value editor style: "popover" or "inline". |
reveal_all_on_drag |
bool |
Reveal every tangle value while dragging any one of them. |
theme |
str |
"auto", "light", or "dark". |
error |
str |
Validation/render error surfaced from the widget. |