mirror of
https://github.com/pyscript/pyscript.git
synced 2025-12-20 02:37:41 -05:00
116 lines
4.1 KiB
HTML
116 lines
4.1 KiB
HTML
<html><head>
|
|
<title>Bokeh Example</title>
|
|
<meta charset="iso-8859-1">
|
|
<link rel="icon" type="image/x-icon" href="./favicon.png">
|
|
<script type="text/javascript" src="https://cdn.bokeh.org/bokeh/release/bokeh-2.4.2.min.js"></script>
|
|
<script type="text/javascript" src="https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.2.min.js"></script>
|
|
<script type="text/javascript" src="https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.2.min.js"></script>
|
|
<script type="text/javascript" src="https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.2.min.js"></script>
|
|
<script type="text/javascript" src="https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.2.min.js"></script>
|
|
|
|
<script type="text/javascript">
|
|
Bokeh.set_log_level("info");
|
|
</script>
|
|
<link rel="stylesheet" href="https://pyscript.net/latest/pyscript.css" />
|
|
|
|
<script defer src="https://pyscript.net/latest/pyscript.js"></script>
|
|
<link rel="stylesheet" href="./assets/css/examples.css" />
|
|
<link rel="stylesheet" href="./assets/prism/prism.css" />
|
|
<script defer src="./assets/prism/prism.js"></script>
|
|
</head>
|
|
<body>
|
|
<nav class="navbar" style="background-color: #000000;">
|
|
<div class="app-header">
|
|
<a href="/">
|
|
<img src="./logo.png" class="logo">
|
|
</a>
|
|
<a class="title" href="" style="color: #f0ab3c;">Bokeh Example</a>
|
|
</div>
|
|
</nav>
|
|
<section class="pyscript">
|
|
<div id="myplot"></div>
|
|
|
|
<py-config>
|
|
packages = [
|
|
"bokeh",
|
|
"numpy"
|
|
]
|
|
</py-config>
|
|
|
|
<py-script id="main">
|
|
import json
|
|
import pyodide
|
|
|
|
from js import Bokeh, console, JSON
|
|
|
|
from bokeh.embed import json_item
|
|
from bokeh.plotting import figure
|
|
from bokeh.resources import CDN
|
|
|
|
# create a new plot with default tools, using figure
|
|
p = figure(plot_width=400, plot_height=400)
|
|
|
|
# add a circle renderer with x and y coordinates, size, color, and alpha
|
|
p.circle([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], size=15, line_color="navy", fill_color="orange", fill_alpha=0.5)
|
|
p_json = json.dumps(json_item(p, "myplot"))
|
|
|
|
Bokeh.embed.embed_item(JSON.parse(p_json))
|
|
</py-script>
|
|
</section>
|
|
<section class="code">
|
|
<div id="view-code-button" role="button" aria-pressed="false" tabindex="0">View Code</div>
|
|
<div id="code-section" class="code-section-hidden">
|
|
<p>index.html</p>
|
|
<pre class="prism-code language-html">
|
|
<code class="language-html">
|
|
<py-config>
|
|
packages = [
|
|
"bokeh",
|
|
"numpy"
|
|
]
|
|
</py-config>
|
|
<py-script id="main">
|
|
import json
|
|
import pyodide
|
|
|
|
from js import Bokeh, console, JSON
|
|
|
|
from bokeh.embed import json_item
|
|
from bokeh.plotting import figure
|
|
from bokeh.resources import CDN
|
|
|
|
# create a new plot with default tools, using figure
|
|
p = figure(plot_width=400, plot_height=400)
|
|
|
|
# add a circle renderer with x and y coordinates, size, color, and alpha
|
|
p.circle([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], size=15, line_color="navy", fill_color="orange", fill_alpha=0.5)
|
|
p_json = json.dumps(json_item(p, "myplot"))
|
|
|
|
Bokeh.embed.embed_item(JSON.parse(p_json))
|
|
</py-script>
|
|
</code>
|
|
</pre>
|
|
</div>
|
|
</section>
|
|
</body>
|
|
<script>
|
|
const viewCodeButton = document.getElementById("view-code-button");
|
|
const codeSection = document.getElementById("code-section");
|
|
const handleClick = () => {
|
|
if (codeSection.classList.contains("code-section-hidden")) {
|
|
codeSection.classList.remove("code-section-hidden");
|
|
codeSection.classList.add("code-section-visible");
|
|
} else {
|
|
codeSection.classList.remove("code-section-visible");
|
|
codeSection.classList.add("code-section-hidden");
|
|
}
|
|
}
|
|
viewCodeButton.addEventListener("click", handleClick)
|
|
viewCodeButton.addEventListener("keydown", (e) => {
|
|
if (e.key === " " || e.key === "Enter" || e.key === "Spacebar") {
|
|
handleClick();
|
|
}
|
|
})
|
|
</script>
|
|
</html>
|