Jupyter笔记本在GitHub上的目录结构

5

我在Jupyter笔记本中使用HTML锚点来提供内部链接,例如目录和“返回顶部”所使用的链接。这在我的电脑上非常有效。然而,当我将笔记本上传到GitHub时,不可见的锚点变为可见,并且链接无法使用。如何解决这个问题?

这里有一些在GitHub上存在此问题的笔记本:

https://github.com/mathyingzhou/linear_algebra_demos/blob/master/01-LinearSystems/Solving%20linear%20systems.ipynb

https://github.com/mathyingzhou/boston-crime/blob/master/Boston%20Crime.ipynb


在 GitHub 上发布链接或展示代码示例可能会有所帮助。 - pistolpete
@pistolpete 当然可以!已经完成了! - Ying Zhou
3个回答

3

2
"

以下是2020/06/18的一些指针。

在你的

"
<a id = "1"></a>

你在等号前后有一个空格。我已经测试过,本地看起来没问题(不可见),但是在GitHub解析时会显示出来。

你似乎采用了Sebastian Raschka的tip,将锚点标签放在内容下面的空白markdown单元格中。我认为这并不必要。我无法重现Sebastian的问题,无论是打印预览还是“下载为”HTML。也许Jupyter的行为已经改变了(他发表那篇文章已经六年了!)。你应该发现markdown

# A content heading<a id='headingid'></a>

这有效。本地和在GitHub上测试时,这是不可见的。您也可以使用类似于markdown的方式链接到它。

I want to refer to my [heading](#headingid) now

这在您的笔记本中作为可点击链接有效。它在 Github 自己的渲染器中不起作用。当您将笔记本的 URL 粘贴到 nbviewer 中时,它可以作为可点击链接工作。我还尝试了在本地使用“文件 | 下载为 | html”来获取 ipynb 的 html 版本,我的浏览器按预期呈现此版本,并且链接是可点击的并且有效。

这是我最近研究的内容,上述方法是目前最好的解决方案。即将锚标签附加到所需的 markdown 文本中,在等号前/后不要有空格。在 GitHub 上看起来没问题,只是您无法单击链接。我不确定是否有任何方法可以在 GitHub 上解决这个问题。

如果有人发现这个答案有用,我会感激点赞,因为这是我正在努力研究和寻找自动化方法的事情。点赞既会鼓励我,也会让我接受评论,以便提供给我想要自动化的功能的想法。


1
你可以使用 "nbviewer" 来渲染和提供你的笔记本,而不是使用 GitHub 的渲染器。因此,你可以在存储库的 ReadMe.md 文件中提供一个指向你的笔记本的链接,例如:
https://nbviewer/github/<mygithubprofile>/<link2mynotebook>

请看@martijn-pieters在这篇文章中提供的答案: 在Github上的Jupyter笔记本中使用HTML锚点

这对我解决了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接