Forum Discussion

sathar01_1's avatar
sathar01_1
New Member
3 years ago
Solved

Preparing Hierarchy/Lineage data for Sankey Chart

Hi All,

 

I want to prepare the following data to suit the Sankey needs. Can you please help with the wasy way of doing it.

Original Data

Layer 1Layer 2Layer 3Layer 4Layer 5
ABCDE
AABBCCDDEE
AAABBBCCCDDDEEE

 

Expected data:

 

SourceTargetWeight
AB

1

BC1
CD1
DE1
AABB1
BBCC1
CCDD1
DDEE1
AAABBB1
BBBCCC1
CCCDDD1
DDDEEE1

 

What is the easiest way to prep the data like the one above? Thanks in advance.

  • Hi, try this

     

    Table = UNION(SELECTCOLUMNS(table,"Source",Layer 1 column,"Target",Layer 2 column),
                             SELECTCOLUMNS(table,"Source",Layer 2 column,"Target",Layer 3 column),

                            SELECTCOLUMNS(table,"Source",Layer 3 column,"Target",Layer 4 column),

                            SELECTCOLUMNS(table,"Source",Layer 4 column,"Target",Layer 5 column)

                        )

  • It works great. Thanks for your response... The Exact code i used is given below.

     



    Sankey = UNION(SELECTCOLUMNS(Test,"Source",[Layer 1] ,"Target",[Layer 2] ),
                             SELECTCOLUMNS(Test,"Source",[Layer 2] ,"Target",[Layer 3]),
                            SELECTCOLUMNS(Test,"Source",[Layer 3] ,"Target",[Layer 4] ),
                            SELECTCOLUMNS(Test,"Source",[Layer 4] ,"Target",[Layer 5] )
                        )
     

2 Replies

  • HoangHugo's avatar
    HoangHugo
    Solution Specialist

    Hi, try this

     

    Table = UNION(SELECTCOLUMNS(table,"Source",Layer 1 column,"Target",Layer 2 column),
                             SELECTCOLUMNS(table,"Source",Layer 2 column,"Target",Layer 3 column),

                            SELECTCOLUMNS(table,"Source",Layer 3 column,"Target",Layer 4 column),

                            SELECTCOLUMNS(table,"Source",Layer 4 column,"Target",Layer 5 column)

                        )

    • sathar01_1's avatar
      sathar01_1
      New Member

      It works great. Thanks for your response... The Exact code i used is given below.

       



      Sankey = UNION(SELECTCOLUMNS(Test,"Source",[Layer 1] ,"Target",[Layer 2] ),
                               SELECTCOLUMNS(Test,"Source",[Layer 2] ,"Target",[Layer 3]),
                              SELECTCOLUMNS(Test,"Source",[Layer 3] ,"Target",[Layer 4] ),
                              SELECTCOLUMNS(Test,"Source",[Layer 4] ,"Target",[Layer 5] )
                          )