与非程序员分享Jupyter笔记本的最佳方式是什么?
我想把我的头围绕在我可以/不能用Jupyter做的事情上。
我有一个Jupyter服务器在我们的内部服务器上运行,可以通过VPN和密码保护访问。
我是唯一一个真正创build笔记本的人,但是我想以只读的方式让其他团队成员看到一些笔记本。 理想情况下,我可以与他们分享一个URL,当他们想要看到刷新数据的笔记本时,他们将join书签。
我看到了出口select,但没有提到“出版”或“公开”本地现场笔记本电脑。 这是不可能的吗? 想想如何使用Jupyter,这可能只是一个错误的方法吗? 他们的最佳做法是围绕这个吗?
共享Jupyter笔记本的“最佳”方法是简单地将其放在GitHub上(并直接查看)或其他公共链接,并使用Jupyter Notebook Viewer 。 当隐私问题更多的时候,还有其他的select,但是肯定会更复杂,Jupyter并没有build立这样的方法,但是有两个select:
主持你自己的nbviewer
GitHub和Jupyter Notebook Veiwer都使用相同的工具将.ipynb
文件呈现为静态HTML,这个工具是nbviewer 。
安装说明比我愿意进入这里更加复杂,但是如果你的公司/团队有一个不需要密码访问的共享服务器,那么你可以在该服务器上托pipenbviewer,并指示它从你的凭证服务器。 这可能需要比您要在文档中find的更高级的configuration。
设置一个部署脚本
如果您不一定需要实时更新HTML,那么您可以在凭证服务器上设置一个脚本,该脚本将简单地使用Jupyter的内置导出选项来创build静态HTML文件,然后将这些文件发送到更公开可访问的服务器。
祝你好运!
Michaelbuild议运行自己的nbviewer实例,这是我以前用Enterprise Github服务器的一个很好的例子。
另一个轻量级的select是在笔记本的末端有一个单元格,它会对nbconvert执行shell调用,以便在运行整个事件后自动刷新:
!ipython nbconvert <notebook name>.ipynb --to html
编辑 :与Jupyter / IPython的大拆分,你可能会想要改变!jupyter nbconvert <notebook name>.ipynb --to html
现在!jupyter nbconvert <notebook name>.ipynb --to html
。
他们可能不够成熟,但检查Jupyter仪表板
https://github.com/jupyter-incubator/dashboards
https://github.com/jupyter-incubator/dashboards_server
和Thebe
这取决于你打算如何使用你的笔记本电脑:你想让用户可以重新计算结果,或只是玩他们?
静态笔记本
NBViewer是一个伟大的工具。 你可以直接在Jupyter里面使用它。 Github也有一个渲染器,所以你可以直接链接你的文件(比如https://github.com/my-name/my-repo/blob/master/mynotebook.ipynb )
活着的笔记本
如果你希望你的用户能够重新计算一些部分,你也可以使用MyBinder 。 启动笔记本需要一些时间,但结果是值得的。
在WordPress上这样做的好方法包括以下步骤:
第1步:在文本编辑器中打开Jupyter笔记本,并复制可能如下所示的内容: 在文本编辑器中打开时,您的.ipynb文件可能看起来像这样
第2步: Ctrl + A和Ctrl + C这个内容。 然后按Ctrl + V到你应该创build的GitHub Gist。
第3步:创build一个公开的要点,并像WordPress一样embedded要点,即进入HTML编辑器并添加如下内容:
[gist gist_url]
我已经在我的博客上实现了这一点。 你可以在这里find这个职位
如果您使用kyso.io (免责声明:我创build了kyso),您可以轻松地在线共享笔记本电脑:
- 您可以显示/隐藏代码,以便非技术人员阅读
- 交互式可视化工作完美,像散景和情节。
下面是一些例子:
你可以使用这些命令共享一个笔记本
kyso create "some study title" kyso push "a version message"
实现这个目标的另一种方法是使用JupyterHub 。
通过JupyterHub,您可以创build一个多用户Hub,生成,pipe理和代理单用户Jupyter笔记本服务器的多个实例。 由于其灵活性和定制选项,JupyterHub可用于为学生,企业数据科学小组或科研小组提供笔记本服务。
在CoCalc上,您可以上传您的ipynb文件并与其他人实时协作。 还有一种方法可以将文件发布为静态HTML文件,但是您也可以邀请您的团队成员join您的项目,并在文件中观察发生的事情。 有关于内容的讨论也有一个聊天。
http://www.zepl.com是一个数据科学笔记本中心。; (免责声明,我是ZEPL的联合创始人)你可以连接你的Github或S3与.ipynb文件,并获得
- 笔记本的访问控制(发布只读url)
- 自动从Github / S3同步的笔记本(刷新)
- 报告looknfeel(对于非技术人员)
- 团队和工作空间来组织共享(在团队中安全地共享)
- 对细胞的评论
- Jupyter笔记本和Zeppelin笔记本格式都支持