Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi.
I am trying to recreate a similar flow to that by Joe Warbington's post
I am trying to plot the flow of page selections by users. I have the following sample data :
SessionID | Time | Type | User | Page |
7205 | 26/04/2019 09:06 | Open | 91 | Home |
7205 | 26/04/2019 09:06 | Activated sheet | 91 | Inventory |
7205 | 26/04/2019 09:27 | Activated sheet | 91 | Sales |
7205 | 26/04/2019 09:33 | Activated sheet | 91 | Customers |
7205 | 26/04/2019 09:37 | Close | 91 | League Table |
7533 | 26/04/2019 15:33 | Open | 92 | Home |
7533 | 26/04/2019 15:34 | Activated sheet | 92 | Inventory |
7533 | 26/04/2019 15:34 | Close | 92 | Sales |
I need the Sankey chart to show the flow of navigation through our website. So per user we can see the flow by session ID how they use our site.
Any advice / tips appreciated.
Phil
Hi Phil,
In order to create a Sankey diagram with your data, you'd need to flatten the table and transform it in such a way that the first N pages (as many as you care to track) are listed in N separate fields. For example:
Session User Page1 Page2 Page3 Page4
7205 91 Home Inventory Sales Customers
...
Then you can use the 4 Page fields as 4 Dimensions, and count(distinct SessionID) as a Measure.
In order to flatten the table, you need to reload it with the use of functions Peek() and Previous(), that will help you determine the first page, the second page, etc... You can read about Peek() and Previous() in a variety of blog articles, or in my book "QlikView Your Business".
Cheers,
Oleg Troyansky
Masters Summit for Qlik - coming to Washington, DC and to Amsterdam this fall!
Hi Phil,
In order to create a Sankey diagram with your data, you'd need to flatten the table and transform it in such a way that the first N pages (as many as you care to track) are listed in N separate fields. For example:
Session User Page1 Page2 Page3 Page4
7205 91 Home Inventory Sales Customers
...
Then you can use the 4 Page fields as 4 Dimensions, and count(distinct SessionID) as a Measure.
In order to flatten the table, you need to reload it with the use of functions Peek() and Previous(), that will help you determine the first page, the second page, etc... You can read about Peek() and Previous() in a variety of blog articles, or in my book "QlikView Your Business".
Cheers,
Oleg Troyansky
Masters Summit for Qlik - coming to Washington, DC and to Amsterdam this fall!
Hi Phil,
yes, of course - when you reload and flatten your data table, you should sort them chronologically, in order to get the correct travel path.
Did you want to sort them based on the duration of their page visit? That's a valid analysis, but I don't think it should be presented in a sankey diagram, because it will look confusing - the sankey diagram shows movements "from" and "to", not so much the durations of each page visit...
Hopefully it makes sense to you...
Cheers,
Oleg Troyansky
Hi Oleg,
That makes sense - many thanks for your input and advice!
Phil