接着我将快速概览所涉及的工具(Plotly和ipywidgets),顺便提供一些关于Jupyter生态系统的通用建议。...然后只需记住,.iplot()是在Jupyter中显示内容的神奇语句。 ipywidgets ipywidgets可以很方便地在notebook中创建交互界面。同样,它很好地平衡了灵活性和易用性。...依照安装步骤安装ipywidgets后,就可以直接使用了。ipywidgets提供了供交互界面使用的组件,例如滑动条、复选框、按钮、文本框,等等。 ipywidgets上手很容易,理解交互函数即可。...从上图我们可以看到,ipywidgets使用起来很方便,只需将原Python函数和需要自动映射到部件的参数传给interact函数: food(食物):空列表,将被转换为文本框 nutrient(营养物质...例如ipywidgets仅仅使用了interact函数和类型推断。ipywidgets其实还支持自定义部件和部件组合,详见官方文档。 我希望这篇文章能够展现这些工具的简单性和可定制性。
fn r(n: i32) -> i32 { if n > 0 { 0 } 1 } 像上面这个函数,编译会报错,如下: | 2 | / if n >...-- help: consider using a semicolon here | |_____| | expected this to be `()` 看的出来编译器认为这个函数返回的是...unit (),而if里面的0却是integer,所以报错了 我知道下面2种做法可以编译通过: 把1放进else里面 在0前面显式的加上return 现在问题来了: 这个编译不通过的函数,我标注了返回类型为...i32,而且函数体内怎么看返回的也不是()啊,为什么编译器会认为返回的是()类型呢?...if n > 0 { 0 } 和 1 因为没有else,所以它不认为if 代码块是表达式的一部份 所以做为函数返回值的是 1 这个表达式 第一个语句中的代码块的最后一行是表达式,但其它本身又不是条件赋值语句
2.3 案例 案例一: 案例二: 2.4 ipywidgets与lineup_widget共同使用的案例 三 相似的Jupyter画图小模块 3.1 d3-slider widget 3.2 drawing-pad...://github.com/jupyter-widgets/ipywidgets 安装: # 方式一 pip install ipywidgets jupyter nbextension enable...,函数参数),此时函数参数是由拖拽滑块FloatSlider来确定。...,此时通过装饰器,interact_manual(函数,函数参数)中的函数被隐去。...参考:Jupyter Widget 2.1 安装 ## install Jupyter Widgets pip install ipywidgets jupyter nbextension enable
ipywidgets(jupyter原名ipython) 第一个例子,a+b=?...import ipywidgets as widgets 两个文本框 input_text = widgets.Text(description='A=') input_text2 = widgets.Text..., layout=widgets.Layout(left='220px')) 显示结果的HTML组件 html = widgets.HTML(value='') 设立一个事件响应函数submit...,并把按钮的on_click事件绑定到这个函数上 def submit(*ignore): a = input_text.value b = input_text2.value...这里我们用tushare获取股票代码, 然后用pyecharts生成一个k线的html, 并在jupyter中显示 def get_stock_plot_html(code): df = ts.get_k_data
ipywidgets(jupyter原名ipython) 第一个例子,a+b=?...import ipywidgets as widgets 两个文本框 input_text = widgets.Text(description='A=') input_text2 = widgets.Text..., layout=widgets.Layout(left='220px')) 显示结果的HTML组件 html = widgets.HTML(value='') 设立一个事件响应函数submit...,并把按钮的on_click事件绑定到这个函数上 def submit(*ignore): a = input_text.value b = input_text2.value...第二个例子,输入股票代码显示k线图 import re import base64 import tushare as ts import ipywidgets as widgets import pyecharts.options
4.Jupyter 组件 让Notebook更具交互性 组件是python里面的事件性类,它们可以在浏览器中显示,经常可以用来做一些控制,比如滑动条,文本框等等。...交互 交互函数(ipywidgets.interact)可以自动地创建一个用户界面(UI)来控制对代码和数据的探索。它是最简单的IPython组件。...6.幻灯片显示 代码是交流的有效工具。 Notebook是用来教授和编写可解释代码的有效工具。...一个浅灰色的选项在每个单元格上方显示,你可以自定义为幻灯片。 ?...用pip (不推荐) pip install RISE 然后下面两部来把JS和CSS安装到合适的地方: jupyter-nbextension install rise --py --sys-prefix
4.Jupyter 组件 让Notebook更具交互性 组件是python里面的事件性类,它们可以在浏览器中显示,经常可以用来做一些控制,比如滑动条,文本框等等。...安装 # pip pip install ipywidgets jupyter nbextension enable --py widgetsnbextension # Conda conda install...交互 交互函数(ipywidgets.interact)可以自动地创建一个用户界面(UI)来控制对代码和数据的探索。它是最简单的IPython组件。...一个浅灰色的选项在每个单元格上方显示,你可以自定义为幻灯片。...用pip (不推荐) pip install RISE 然后下面两部来把JS和CSS安装到合适的地方: jupyter-nbextension install rise --py --sys-prefix
特别是,用户可以利用ui函数来为他们的地球引擎脚本构建整个图形用户界面(GUI)。GUI可以包括简单的部件(如标签、按钮、复选框、滑块、文本框)以及更复杂的部件(如图表、地图、面板)来控制GUI布局。...幸运的是,Jupyter生态系统有ipywidgets,这是一个在Jupyter笔记本中创建交互式用户界面控件(如按钮、滑块、复选框、文本框、下拉列表)的架构,可以与Python代码通信。...一个非常强大的部件是输出部件,它可以用来显示由IPython生成的丰富的输出,如文本、图像、图表和视频。完整的widget列表和关于输出widget的更多信息可以在下面的链接中找到。...、教学和分享的Jupyter环境中探索和分析大规模地球引擎数据集变得更加容易。...: leveraging Jupyter’s display system — Jupyter Widgets 8.0.2 documentation 问题: 我正在开发一个应用程序,显示用户绘制的
这就是用于终端的Jupyter Notebook工具nbterm: ? 正在使用Jupyter Notebook又更习惯终端编辑的开发者们,一起来看看这款轻便的工具吧。...生态库的开发,比如nbclient、jupyter-client、ipykernel、ipywidgets等。...因为作为一名参与Jupyter软件包的维护的贡献者,他想要尝试不涉及向后兼容限制的新项目,或者说测试一下开发一个轻量notebook客户端的难度,这就导致nbterm相当精简的代码库。...终端虽然只限制于显示字符,但ASCII码可以使这个问题迎刃而解。 David在前段时间已经使用ASCII后端对matplotlib图形库尝试了绘制: ? 目前只能在MacOS上使用。...除此之外,David也提出了要添加一些类似ipywidgets的交互功能,以及更多简单的滑块、按钮、菜单等GUI部件。 ?
description='Columns:', disabled=False)复制代码接下来,我们可以创建一个函数...Miles']) plt.title('Boxplot of miles for' + selected_vals) plt.show()复制代码之后,我们需要创建一个 layout/布局,Jupyter...下面我们准备输入和输出布局的显示。...category) plt.title('Scatterplot of ' +x+' versus '+ y) #plt.xlabel('Date') plt.show()复制代码 显示...'y': drop_down_y, 'category':drop_down_category})复制代码 显示选择后的输入和输出
执行如下命令即可完成安装: pip install ipywidgets && jupyter nbextension enable --py widgetsnbextension 直到看到如下信息:...Enabling notebook extension jupyter-js-widgets/extension...- Validating: ok 现在重启你的 Jupyter Notebook 即可。...注意2个参数都给了一个默认的空字符串值 然后,为这个函数打上装饰器,并执行: 行1:@wg.xxxx 是某个 ipywidgets 的装饰器,为什么这里是 @wg ?...这是因为一开始我们的导入语句是 import ipywidgets as wg ,这是我们定义的别名 @wg.interact_manual() ,是手动交互的意思,这情况下,他会根据目标函数的各个参数的默认值类型
希望看到不同年份总销量前10的地区,以及各个品种的销量信息 由于需求需要汇总,Excel 中使用透视表是最好的方式: 过程不多说,这里值得注意的是,我们能通过最上方选择不同的年份,下方数据表能马上显示此年份总销量...---- 小组件 我们将使用 ipywidgets 库,此工具最适合用在 Jupyter Notebook 上,假设你已经安装好 Jupyter Notebook ,打开你的 cmd,执行以下命令: pip...install ipywidgets && jupyter nbextension enable --py widgetsnbextension 直到看到如下信息: Enabling notebook...widgets 库用于完成各种小组件,他能生成网页内容,不仅仅在 Jupyter Notebook 使用,但本文只讲解在 Jupyter Notebook 上的使用 ---- 修饰你的 pandas...我们稍微加工一下这个过程,定义一个函数: 现在好一些,但是改变条件仍然需要修改代码 简单加上一个装饰器即可: 行1:@wg.interact 是一个装饰器,打到我们的自定义函数上 其中每个命名参数为自定义函数上的参数
作者:Martin Renou 编译:wLsq Ipywidgets在Jupyter生态系统中扮演着重要角色,它带来了用户和数据之间的互动。...Ipywidgets链接: https://github.com/jupyter-widgets/ipywidgets ?...每次用户在笔记本中显示小组件时,它都会创建一个与Javascript模型保持同步的视图。在上面示例中,您可以看到两个视图是同步的。 ?...ipywidgets不仅仅是一个交互式小组件库,它也是一个功能强大的框架,可以直接创建新的自定义小组件。...:交互式2-D和3-D数据可视化 从ipywidgets 7.4开始,我们有两个新的小组件:音频和视频,可以在Jupyter Notebook和Jupyterlab中轻松进行图像/音频处理。
---- 2.2 必备程序 你可能会遇到无法显示的情况,这个主要是你的环境里没有Node.js, 可以通过安装它来解决这个问题。...---- 2️⃣ 安装指定版本插件 : jupyter labextension install my-extension@1.2.3 ---- 3️⃣ 卸载插件 : jupyter labextension...8JupyterLab Top Bar 这里要说明一下,其实这是多个插件,但都在顶部的菜单栏显示,帮助你操作,就一起推荐了哈。...~ 11Jupyterlab-plotly 和ipympl插件类似,这也是解决交互问题的一个插件,经常使用plotly的你一定不陌生吧。...>=3" "ipywidgets>=7.6" ---- 接着看看效果吧,嘿嘿。
然而,最近又发现了一个新的Jupyter Notebook工具,再次打破我的认识。使用它可以不用在web敲代码了,它可以让我们在终端命令行使用Jupyter Notebook ? ?...、ipywidgets等。...他本人提到,nbterm不会重用Jupyter的基本组件,如jupyter-client和nbformat,而是想要尝试不涉及向后兼容限制的新项目,或者说测试一下开发一个轻量notebook客户端的难度...显然,nbterm对于notebook而言还是有一些功能需要完善的,比如终端虽然只限制于显示字符。不过ASCII码可以使这个问题迎刃而解。...除此之外,该项目也提出了要添加一些类似ipywidgets的交互功能,以及更多简单的滑块、按钮、菜单等GUI部件等。 这个工具虽然目前来看可用性不强,但也确实是一个启发。
安装方法 1# pip 2pip install ipywidgets 3jupyter nbextension enable --py widgetsnbextension 4# Conda 5conda...2from ipywidgets import interact 3import ipywidgets as widgets Qgrid Qgrid也是一个Jupyter的小部件,不过它主要用于数据帧...if you have not enabled the ipywidgets nbextension yet 4jupyter nbextension enable --py --sys-prefix...*.ipynb 好了,现在就变成PPT样式的了,显示在端口8000,你也可以查看源代码找到PPT文件。...Jupyter主题 https://github.com/dunovank/jupyter-themes IPython小部件 https://github.com/jupyter-widgets/ipywidgets
画单个球体 首先执行一个画球的简单案例,这里一般都是在jupyter notebook上实现的,pyvista对于jupyter notebook有较好的支持。...import pyvista as pv sphere = pv.Sphere() sphere.plot(jupyter_backend='static') 运行的效果如下: ?...动态画板 这里要用到我们之前安装的一个插件ipygany,可以在jupyter notebook中显示出来一个动态的画板,这样我们就可以用鼠标去拖动这个三维图,可以看不同的视角,如下是一个简单的单球体案例...='ipygany') 可视化效果图大概这样,只有在jupyter notebook中才能看到效果: ?...最后补充一个自己写的简单案例,可以在面板上画两个不同位置的三维球,使用方法是直接将两个对象加起来,这个就是python中一些魔法函数的优势了,非常的人性化: import pyvista as pv plotter
description='Columns:', disabled=False) 接下来,我们可以创建一个函数...Miles']) plt.title('Boxplot of miles for' + selected_vals) plt.show() 之后,我们需要创建一个 layout/布局,Jupyter...图片 图片 下面我们准备输入和输出布局的显示。...category) plt.title('Scatterplot of ' +x+' versus '+ y) #plt.xlabel('Date') plt.show() 显示...'y': drop_down_y, 'category':drop_down_category}) 显示选择后的输入和输出
但是说实话,每个可视化包都有自己独特的方法和函数,经常忘,这是让我一直很头疼的地方。 好消息来了!...如果是在Jupyterlab中使用Plotly,那还需要执行几个额外的安装步骤来显示可视化效果。 首先,安装IPywidgets。...pip install jupyterlab "ipywidgets>=7.5" 然后运行此命令以安装Plotly扩展。...我们可以结合Pandas的groupby函数创建一个条形图,总结各类之间Hue的均值差异。...jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter labextension install @bokeh/