Skip to content

Commit cc37587

Browse files
authored
Merge pull request #91 from QuantStack/2020-pydata-budapest
2020 pydata budapest
2 parents db0d347 + c5ca7e5 commit cc37587

File tree

5 files changed

+490
-0
lines changed

5 files changed

+490
-0
lines changed
+182
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"metadata": {
7+
"ExecuteTime": {
8+
"end_time": "2020-06-30T14:44:37.710652Z",
9+
"start_time": "2020-06-30T14:44:36.873479Z"
10+
}
11+
},
12+
"outputs": [],
13+
"source": [
14+
"from bqplot import pyplot as plt\n",
15+
"import ipywidgets as widgets\n",
16+
"import numpy as np"
17+
]
18+
},
19+
{
20+
"cell_type": "code",
21+
"execution_count": null,
22+
"metadata": {
23+
"ExecuteTime": {
24+
"end_time": "2020-06-30T14:44:37.783189Z",
25+
"start_time": "2020-06-30T14:44:37.771507Z"
26+
}
27+
},
28+
"outputs": [],
29+
"source": [
30+
"# generate some fake \n",
31+
"n = 2000\n",
32+
"x = np.linspace(0.0, 10.0, n)\n",
33+
"np.random.seed(0)\n",
34+
"y = np.cumsum(np.random.randn(n)*10).astype(int)"
35+
]
36+
},
37+
{
38+
"cell_type": "code",
39+
"execution_count": null,
40+
"metadata": {
41+
"ExecuteTime": {
42+
"end_time": "2020-06-30T14:44:37.916067Z",
43+
"start_time": "2020-06-30T14:44:37.789416Z"
44+
}
45+
},
46+
"outputs": [],
47+
"source": [
48+
"fig_hist = plt.figure( title='Histogram in Voila')\n",
49+
"hist = plt.hist(y, bins=25, colors=['steelblue'])\n",
50+
"fig_hist"
51+
]
52+
},
53+
{
54+
"cell_type": "code",
55+
"execution_count": null,
56+
"metadata": {
57+
"ExecuteTime": {
58+
"end_time": "2020-06-30T14:44:39.324769Z",
59+
"start_time": "2020-06-30T14:44:39.302431Z"
60+
}
61+
},
62+
"outputs": [],
63+
"source": [
64+
"hist.bins = 10;"
65+
]
66+
},
67+
{
68+
"cell_type": "code",
69+
"execution_count": null,
70+
"metadata": {
71+
"ExecuteTime": {
72+
"end_time": "2020-06-30T14:44:39.967211Z",
73+
"start_time": "2020-06-30T14:44:39.947076Z"
74+
}
75+
},
76+
"outputs": [],
77+
"source": [
78+
"slider = widgets.IntSlider(min=1, max=100, v_model=30)\n",
79+
"slider"
80+
]
81+
},
82+
{
83+
"cell_type": "code",
84+
"execution_count": null,
85+
"metadata": {
86+
"ExecuteTime": {
87+
"end_time": "2020-06-30T14:44:41.005101Z",
88+
"start_time": "2020-06-30T14:44:40.998667Z"
89+
}
90+
},
91+
"outputs": [],
92+
"source": [
93+
"slider.value = 20;"
94+
]
95+
},
96+
{
97+
"cell_type": "code",
98+
"execution_count": null,
99+
"metadata": {
100+
"ExecuteTime": {
101+
"end_time": "2020-06-30T14:44:41.678387Z",
102+
"start_time": "2020-06-30T14:44:41.667654Z"
103+
}
104+
},
105+
"outputs": [],
106+
"source": [
107+
"widgets.link((hist, 'bins'), (slider, 'value'));"
108+
]
109+
},
110+
{
111+
"cell_type": "code",
112+
"execution_count": null,
113+
"metadata": {
114+
"ExecuteTime": {
115+
"end_time": "2020-06-30T14:44:42.384650Z",
116+
"start_time": "2020-06-30T14:44:42.280810Z"
117+
}
118+
},
119+
"outputs": [],
120+
"source": [
121+
"fig_lines = plt.figure( title='Line Chart')\n",
122+
"lines = plt.plot(x, y)\n",
123+
"fig_lines"
124+
]
125+
},
126+
{
127+
"cell_type": "code",
128+
"execution_count": null,
129+
"metadata": {
130+
"ExecuteTime": {
131+
"end_time": "2020-06-30T14:44:43.494747Z",
132+
"start_time": "2020-06-30T14:44:43.473428Z"
133+
}
134+
},
135+
"outputs": [],
136+
"source": [
137+
"selector = plt.brush_int_selector()\n",
138+
"def update_range(*ignore):\n",
139+
" if selector.selected is not None and len(selector.selected) == 2:\n",
140+
" xmin, xmax = selector.selected\n",
141+
" mask = (x > xmin) & (x < xmax)\n",
142+
" hist.sample = y[mask]\n",
143+
"selector.observe(update_range, 'selected') "
144+
]
145+
},
146+
{
147+
"cell_type": "code",
148+
"execution_count": null,
149+
"metadata": {},
150+
"outputs": [],
151+
"source": []
152+
}
153+
],
154+
"metadata": {
155+
"kernelspec": {
156+
"display_name": "Python 3",
157+
"language": "python",
158+
"name": "python3"
159+
},
160+
"language_info": {
161+
"codemirror_mode": {
162+
"name": "ipython",
163+
"version": 3
164+
},
165+
"file_extension": ".py",
166+
"mimetype": "text/x-python",
167+
"name": "python",
168+
"nbconvert_exporter": "python",
169+
"pygments_lexer": "ipython3",
170+
"version": "3.8.3"
171+
},
172+
"widgets": {
173+
"application/vnd.jupyter.widget-state+json": {
174+
"state": {},
175+
"version_major": 2,
176+
"version_minor": 0
177+
}
178+
}
179+
},
180+
"nbformat": 4,
181+
"nbformat_minor": 4
182+
}
+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "markdown",
5+
"metadata": {},
6+
"source": [
7+
"<img src=\"xeus-cling.svg\">"
8+
]
9+
},
10+
{
11+
"cell_type": "code",
12+
"execution_count": null,
13+
"metadata": {},
14+
"outputs": [],
15+
"source": [
16+
"#include <vector>\n",
17+
"#include <string>\n",
18+
"\n",
19+
"#include \"xtensor/xtensor.hpp\"\n",
20+
"#include \"xtensor/xrandom.hpp\"\n",
21+
"#include \"xtensor/xeval.hpp\"\n",
22+
"#include \"xtensor/xmath.hpp\"\n",
23+
"\n",
24+
"#include \"xwidgets/xslider.hpp\"\n",
25+
"#include \"xwidgets/xlink.hpp\"\n",
26+
"\n",
27+
"#include \"xplot/xfigure.hpp\"\n",
28+
"#include \"xplot/xmarks.hpp\"\n",
29+
"#include \"xplot/xaxes.hpp\""
30+
]
31+
},
32+
{
33+
"cell_type": "code",
34+
"execution_count": null,
35+
"metadata": {},
36+
"outputs": [],
37+
"source": [
38+
"std::size_t n = 200;\n",
39+
"\n",
40+
"auto x = xt::linspace(0.0, 10.0, n);\n",
41+
"\n",
42+
"xt::random::seed(0);\n",
43+
"auto cumsum = xt::eval(xt::cumsum(xt::random::randn<double>({n})));\n",
44+
"auto y = xt::eval(xt::floor(cumsum * 10.0));\n",
45+
"\n",
46+
"auto fig = xpl::figure().title(\"Histogram\").finalize();\n",
47+
"\n",
48+
"xpl::linear_scale xs, ys;\n",
49+
"xpl::hist hist(xs, ys);\n",
50+
"hist.sample = y;\n",
51+
"hist.bins = 25;\n",
52+
"hist.colors = std::vector<std::string>({\"#1f77b4\"});\n",
53+
"\n",
54+
"xpl::axis hx(xs), hy(ys);\n",
55+
"hy.orientation = \"vertical\";\n",
56+
"fig.add_axis(hx);\n",
57+
"fig.add_axis(hy);\n",
58+
"\n",
59+
"fig.add_mark(hist);\n",
60+
"fig"
61+
]
62+
},
63+
{
64+
"cell_type": "code",
65+
"execution_count": null,
66+
"metadata": {},
67+
"outputs": [],
68+
"source": [
69+
"auto slider = xw::slider<std::size_t>()\n",
70+
" .min(1).max(100)\n",
71+
" .value(30).finalize();\n",
72+
"auto l = xw::link(slider, \"value\", hist, \"bins\");\n",
73+
"slider"
74+
]
75+
}
76+
],
77+
"metadata": {
78+
"kernelspec": {
79+
"display_name": "C++14",
80+
"language": "C++14",
81+
"name": "xcpp14"
82+
},
83+
"language_info": {
84+
"codemirror_mode": "text/x-c++src",
85+
"file_extension": ".cpp",
86+
"mimetype": "text/x-c++src",
87+
"name": "c++",
88+
"version": "14"
89+
}
90+
},
91+
"nbformat": 4,
92+
"nbformat_minor": 4
93+
}

0 commit comments

Comments
 (0)