Jquery 如何重新创建GitHub网络图

Jquery 如何重新创建GitHub网络图,jquery,graph,github,Jquery,Graph,Github,有没有开源项目或jQuery插件可以用来重新创建 我想创建具有类似功能的内容。您可能需要依赖处理以下内容的: 列出绘制网络图所需的所有数据、每个分支的头部以及新的更改和所有相关的提交 至于渲染,Github使用画布显示其网络图。 您可能想看一看如何很好地呈现Github的影响图: 一开始,Github网络视图似乎很难进行反向工程。但是,在使用将其缩小后,代码变得相当容易理解。因此,运行bundle\u github.js和bundle\u common.js并获取jQuery 1.4.2源代码。

有没有开源项目或jQuery插件可以用来重新创建


我想创建具有类似功能的内容。

您可能需要依赖处理以下内容的

列出绘制网络图所需的所有数据、每个分支的头部以及新的更改和所有相关的提交

至于渲染,Github使用画布显示其网络图。 您可能想看一看如何很好地呈现Github的影响图:

一开始,Github网络视图似乎很难进行反向工程。但是,在使用将其缩小后,代码变得相当容易理解。因此,运行
bundle\u github.js
bundle\u common.js
并获取jQuery 1.4.2源代码。然后就可以开始阅读源代码/调试页面了

在Github网络页面中,如果画布正常工作,则只需通过以下方式生成网络:

var ng = new Network("#ng", 920, 600)
它继续使用由
defineNetwork(window.jQuery)
生成的对象,其中

  • 从中获取数据
  • 创建
    d.KeyDriver
    d.MouseDriver
    的实例以处理输入
  • 使用
    d.Chrome
    绘制时间线、页眉和页脚
  • 使用
    d.Graph
    编写网络图
  • (每个
    d.ClassName
    都是网络对象的内部类,因此它们的源代码可以在
    defineNetwork
    源代码中找到)

    我没有花时间真正深入研究代码,并找到它如何工作的所有细节,但它是可读的。现在取决于你想做什么,你可以

    • (可能)做得很小 修改以使代码 在外部呈现Github数据 github.com
    • 使您自己的数据以格式可用,并将其可视化
    • 仅调整
      d.Graph
      类以处理您自己的数据
    • 只需阅读代码并学习

    注意:您可能无法合法地按原样使用或修改代码,因此我建议您这样做只是为了学习(尽管是IANAL)。

    登录,转到您的github repo,单击“网络”@zack,这比我要说的“查看源代码”=)更像是优秀的ol开发人员的幽默感。-我在这里发布之前检查了源代码,但它是如此专有,我不可能对其进行反向工程。这就是为什么我希望有一些操作系统解决方案谢谢你的提示。我想解决方案包括查看repo中的提交对象并从父指针构建一个图。这似乎是一个断开的链接:github是否删除了该选项?@GuySoft github API在过去两年中进行了更新,这个答案的细节现在已经过时。我猜现在的网络图使用的是分支和分叉API。无论如何,只要抓取代码,美化它,看看它的功能,仍然很容易。网络API文档的链接现在是404页。这是过时的吗?或者这有新的联系吗?@MichaelT我想现在应该有了?