Jacky Zhao
2022-09-12 e6c7a4e1e2e3b0437b5dbbbeb7abc4e05622db16
assets/js/graph.js
@@ -1,16 +1,15 @@
async function drawGraph(
  baseUrl,
  pathColors,
async function drawGraph(baseUrl, isHome, pathColors, graphConfig) {
  let {
  depth,
  enableDrag,
  enableLegend,
  enableZoom,
  isHome,
  opacityScale,
  scale,
  repelForce,
  fontSize
) {
  fontSize} = graphConfig;
  const container = document.getElementById("graph-container")
  const { index, links, content } = await fetchData
@@ -156,7 +155,7 @@
  const nodeRadius = (d) => {
    const numOut = index.links[d.id]?.length || 0
    const numIn = index.backlinks[d.id]?.length || 0
    return 3 + (numOut + numIn) / 4
    return 2 + Math.sqrt(numOut + numIn)
  }
  // draw individual nodes
@@ -180,7 +179,7 @@
      ])
      const neighbourNodes = d3.selectAll(".node").filter((d) => neighbours.includes(d.id))
      const currentId = d.id
      // window.Million.prefetch(new URL(`${baseUrl}${decodeURI(d.id).replace(/\s+/g, "-")}/`))
      window.Million.prefetch(new URL(`${baseUrl}${decodeURI(d.id).replace(/\s+/g, "-")}/`))
      const linkNodes = d3
        .selectAll(".link")
        .filter((d) => d.source.id === currentId || d.target.id === currentId)
@@ -191,7 +190,7 @@
      // highlight links
      linkNodes.transition().duration(200).attr("stroke", "var(--g-link-active)")
      const bigFont = fontSize+0.5
      const bigFont = fontSize*1.5
      // show text for self
      d3.select(this.parentNode)