mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2025-10-11 11:56:17 +00:00
39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
![]() |
# Module taken from https://github.com/koaning/fh-altair
|
||
|
# MIT license
|
||
|
|
||
|
from typing import Optional
|
||
|
|
||
|
from bokeh.embed import components
|
||
|
from bokeh.models import Plot
|
||
|
from monsterui.franken import H4, Card, NotStr, Script
|
||
|
|
||
|
BokehJS = [
|
||
|
Script(src="https://cdn.bokeh.org/bokeh/release/bokeh-3.6.3.min.js", crossorigin="anonymous"),
|
||
|
Script(
|
||
|
src="https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.6.3.min.js",
|
||
|
crossorigin="anonymous",
|
||
|
),
|
||
|
Script(
|
||
|
src="https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.6.3.min.js", crossorigin="anonymous"
|
||
|
),
|
||
|
Script(
|
||
|
src="https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.6.3.min.js", crossorigin="anonymous"
|
||
|
),
|
||
|
Script(
|
||
|
src="https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-3.6.3.min.js",
|
||
|
crossorigin="anonymous",
|
||
|
),
|
||
|
]
|
||
|
|
||
|
|
||
|
def Bokeh(plot: Plot, header: Optional[str] = None) -> Card:
|
||
|
"""Converts an Bokeh plot to a FastHTML FT component."""
|
||
|
script, div = components(plot)
|
||
|
if header:
|
||
|
header = H4(header, cls="mt-2")
|
||
|
return Card(
|
||
|
NotStr(div),
|
||
|
NotStr(script),
|
||
|
header=header,
|
||
|
)
|