跳转到主要内容

将 observablehq.com 上托管的 Observable 单元嵌入到 Jupyter 笔记本中。

项目描述

observable-jupyter

将来自 Observable 笔记本的单元嵌入到 Jupyter 笔记本中。

在 Colab 上查看演示笔记本

此库提供了一种简单的方法,可以从 Python 代码中嵌入单元并将自定义输入值传递给它们。有关 Jupyter 笔记本中更复杂的数据流,请参阅相关的库 observable-jupyter-widget,它使用 Jupyter 小部件系统在 Python 和 JavaScript 之间传递数据。

用法

要安装库,导入 embed 函数,并嵌入来自 此 Observable 笔记本 的 "graphic" 单元

!pip install observable_jupyter
from observable_jupyter import embed
embed('@mbostock/epicyclic-gearing', cells=['graphic'], inputs={'speed': 0.2})

使用 embed() 的最简单方法是渲染整个 Observable 笔记本

embed('@d3/gallery')

您可能想要将您自己的数据交换到 D3 图表

import this
text = ''.join(this.d.get(l, l) for l in this.s)
embed('@d3/word-cloud', cells=['chart'], inputs={'source': text})

使用多个单元,您可以嵌入交互式图表!

embed(
    '@observablehq/visualize-a-data-frame-with-observable-in-jupyter,
    cells=['vegaPetalsWidget', 'viewof sepalLengthLimits', 'viewof sepalWidthLimits'],
)

使用 embed([]) 的单元关键字参数嵌入特定单元会导致仅显示这些单元,但每个单元仍然运行。

此行为与 Observable embed 默认值略有不同。

关于此库

此库使用 Observable 提供的 API 将托管在 Observable 中的笔记本嵌入到 Jupyter 中。

该库是在 Observable 上开发的,但现在由 Thomas Ballinger 维护。2021 年 9 月之前添加的所有代码均为 Observable 版权。

开发

请参阅 ARCHITECTURE.md 了解概述。

由于 Python 库包含 JavaScript,因此您将需要节点以及 Python 才能为其做出贡献。

安装包中包含的两个JavaScript文件iframe_bundle.js和wrapper_bundle.js并未保存在本仓库中。它们是由rollup生成的,rollup是一个JavaScript“打包器”,它将js文件夹中的JavaScript源代码文件和js/package.json中列出的依赖项组合在一起。

使用pip install .或pip install -e .安装Python包将自动运行打包器并生成这些文件。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

observable_jupyter-0.1.14.tar.gz (34.3 kB 查看哈希值)

上传时间

构建分发

observable_jupyter-0.1.14-py3-none-any.whl (31.3 kB 查看哈希值)

上传时间 Python 3

由以下机构支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面