返回介绍

Python 2

发布于 2025-02-25 23:44:07 字数 2206 浏览 0 评论 0 收藏 0

Interactive widgets

For more examples

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
from IPython.html.widgets import interactive
from IPython.display import display
:0: FutureWarning: IPython widgets are experimental and may change in the future.
from scipy.stats import beta
plt.style.use('ggplot')

def dist(a=1, b=1):
    x = np.linspace(0, 1, 100)
    pdf = beta.pdf(x, a, b)
    plt.plot(pdf)
    return pdf

widget = interactive(dist, a=(0.0, 5.0), b=(0.0, 5.0))
widget.background_color = 'lightsalmon'
display(widget)

widget.close()
# Currnet settings of variables
widget.kwargs
{'a': 0.8, 'b': 0.7}
# Current value of function
pdf = widget.result
plt.plot(pdf);

Bokeh

More examples

from bokeh.plotting import *
from bokeh.models import ColumnDataSource

BokehJS successfully loaded.

output_notebook()
N = 300
x = np.linspace(0, 4*np.pi, N)
y1 = np.sin(x)
y2 = np.cos(x)

source = ColumnDataSource()
source.add(data=x, name='x')
source.add(data=y1, name='y1')
source.add(data=y2, name='y2');
TOOLS = "pan,wheel_zoom,box_zoom,reset,save,box_select,lasso_select"

s1 = figure(tools=TOOLS, plot_width=350, plot_height=350)
s1.scatter('x', 'y1', source=source)

# Linked brushing in Bokeh is expressed by sharing data sources between
# renderers. Note below that s2.scatter is called with the `source`
# keyword argument, and supplied with the same data source from s1.scatter
s2 = figure(tools=TOOLS, plot_width=350, plot_height=350)
s2.scatter('x', 'y2', source=source);
p = gridplot([[s1,s2]])
show(p)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文