因此,有很多关于在markdown中创建锚点以及在笔记本中创建内部table-of-contents-type锚点的内容。我需要的是能够从外部源访问Github笔记本中的锚点,例如:
https://github.com/.../mynotebook.ipynb#thiscell
我有很多以这种方式托管的交互式教程,还有一本我希望能够链接到笔记本部分的手册。我可以使用以下方法将锚标记添加到markdown单元格中:
<a id='thiscell'></a>
但是当我尝试使用上面写的链接时,它只是将笔记本加载到顶部,就好像没有对锚点的引用一样。
答案 0 :(得分:2)
我遇到了同样的问题。作为一种解决方法,我已将笔记本的渲染委托给http://nbviewer.jupyter.org。这只是提供其GitHub 公共网址并点击Go!
当然,内部链接仍然无法在GitHub下运行,但我现在在网络上的某个地方有一个正常运行的笔记本,这是我最初想要的。
我希望这也适用于你的情况。
答案 1 :(得分:-1)
GitHub使用单独的域render.githubusercontent.com渲染笔记本,并将输出集成到nested frame中。这意味着GitHub URL上的任何锚都不起作用,因为框架文档完全是另一个URL。
此外,带边框的内容不容易重复使用,因为这样会导致笔记本计算机的缓存渲染具有有限的生命周期。您不能依靠它停留在后面进行链接!
因此,如果您需要能够链接到笔记本中的各个部分,那么使用Jupyter笔记本查看器服务https://nbviewer.jupyter.org/会更好。它支持显示来自任何公共URL的笔记本,包括GitHub托管的存储库和GitHub要点。您也可以只输入GitHub用户名(或username/repository
)以快速访问。
此笔记本查看器的功能比GitHub使用的功能丰富得多。 GitHub杀死所有嵌入式JavaScript,并去除几乎所有HTML属性。任何嵌入式动画都是正确的。但是Jupyter nbviewer服务直接支持这些功能。
例如在nbviewer上比较这两个笔记本:
在GitHub上具有相同的笔记本
第一个在结尾处包含一个动画,第二个包含一个复杂的表,通过使用一些HTML样式和锚链接可以使该表更易于阅读。