1

Date structure of materialized paths is shown as below:

   a                 node | id | parent_path
  / \                  a  | 42 | 42/
...  b                 b  | 63 | 42/63/
    / \                c  | 84 | 42/63/84/
   c   d               d  | 85 | 42/63/85/

I want to use this data to generate a force directed tree chart just like: Force-Directed-Tree

However this type of chart only takes the structure like:

{
    name: "Core",
    children: [
      {
        name: "First",
        children: [
          { name: "A1", value: 100 },
          { name: "A2", value: 60 }
        ]
      },
      {
        name: "First",
        children: [
          { name: "A1", value: 100 },
          { name: "A2", value: 60 }
        ]
      },
      {
        name: "Second",
        children: [
          { name: "B1", value: 135 },
          { name: "B2", value: 98 }
        ]
      },
      {
        name: "Third",
        children: [
          {
            name: "C1",
            children: [
              { name: "EE1", value: 130 },
              { name: "EE2", value: 87 },
              { name: "EE3", value: 55 }
            ]
          },
          { name: "C2", value: 148 },
          {
            name: "C3", children: [
              { name: "CC1", value: 53 },
              { name: "CC2", value: 30 }
            ]
          },
          { name: "C4", value: 26 }
        ]
      },
      {
        name: "Fourth",
        children: [
          { name: "D1", value: 415 },
          { name: "D2", value: 148 },
          { name: "D3", value: 89 }
        ]
      },
      {
        name: "Fifth",
        children: [
          {
            name: "E1",
            children: [
              { name: "EE1", value: 33 },
              { name: "EE2", value: 40 },
              { name: "EE3", value: 89 }
            ]
          },
          {
            name: "E2",
            value: 148
          }
        ]
      }

    ]
  }

I have no idea how to transform data into target structure, because I can't tell how many leaves a note has and the depth of the tree of a node. I am using python, so any suggestion with this? Thanks a lot!

johnhsq
  • 11
  • 2
  • this can be done using recursion, are you using a method to retrieve this data, or you using external API, by a query? – Charif DZ Jan 19 '20 at 16:53

0 Answers0