ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ Β«SankeyΒ»

  1. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ sankey.js Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π° Π² ΠΏΠ°ΠΏΠΊΡƒ Π½Π° сСрвСр ΠΏΠΎ адрСсу /docker-volume/dashboard-viewer/customjs.

  2. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Dashboard Designer.

  3. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Β«ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹Β», Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉΒ».

  4. Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ для Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π°.

  5. Π’ ΠΏΠΎΠ»Π΅ «Код Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ (JavaScript)Β» Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΊΠΎΠ΄ скопированный Π½Π° страницС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π°:

    Highcharts.chart('container', { title: { text: 'Highcharts Sankey Diagram' }, series: [{ keys: ['from', 'to', 'weight'], data: [ ['Brazil', 'Portugal', 5], ['Brazil', 'France', 1], ['Brazil', 'Spain', 1], ['Brazil', 'England', 1], ['Canada', 'Portugal', 1], ['Canada', 'France', 5], ['Canada', 'England', 1], ['Mexico', 'Portugal', 1], ['Mexico', 'France', 1], ['Mexico', 'Spain', 5], ['Mexico', 'England', 1], ['USA', 'Portugal', 1], ['USA', 'France', 1], ['USA', 'Spain', 1], ['USA', 'England', 5], ['Portugal', 'Angola', 2], ['Portugal', 'Senegal', 1], ['Portugal', 'Morocco', 1], ['Portugal', 'South Africa', 3], ['France', 'Angola', 1], ['France', 'Senegal', 3], ['France', 'Mali', 3], ['France', 'Morocco', 3], ['France', 'South Africa', 1], ['Spain', 'Senegal', 1], ['Spain', 'Morocco', 3], ['Spain', 'South Africa', 1], ['England', 'Angola', 1], ['England', 'Senegal', 1], ['England', 'Morocco', 2], ['England', 'South Africa', 7], ['South Africa', 'China', 5], ['South Africa', 'India', 1], ['South Africa', 'Japan', 3], ['Angola', 'China', 5], ['Angola', 'India', 1], ['Angola', 'Japan', 3], ['Senegal', 'China', 5], ['Senegal', 'India', 1], ['Senegal', 'Japan', 3], ['Mali', 'China', 5], ['Mali', 'India', 1], ['Mali', 'Japan', 3], ['Morocco', 'China', 5], ['Morocco', 'India', 1], ['Morocco', 'Japan', 3] ], type: 'sankey', name: 'Sankey demo series' }] });

    Β 

  6. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС ΠΊΠΎΠ΄Π° Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ 'container' Π½Π° w.general.renderTo:

    Highcharts.chart(w.general.renderTo, { …

    Β 

  7. ΠŸΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкой ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ data ΠΈ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹Ρ… с OLAP:

    var data = w.data.rows.map(function (row, i) { return [ row[0], row[1], w.data.values[0][i] ] });

    Β 

  8. Π’ строкС с описаниСм элСмСнта data, Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ массив Π½Π° ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ data:

    Β 

  9. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄Π°Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ свойства Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ описаниС элСмСнта text с 'Highcharts Sankey Diagram' Π½Π° w.props.titleName ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ свойство измСнСния Ρ†Π²Π΅Ρ‚Π° тСкста Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° style: {color: w.props.color}:



  10. Π’ ΠΏΠΎΠ»Π΅ «Бвойства Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π° (JSON)Β» Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

    Β 

  11. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΒ».

  12. Π’ ΠΏΠ°Π»ΠΈΡ‚Ρ€Π΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ² Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ созданный Π²Π°ΠΌΠΈ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚.

  13. Π’ привязкС Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π° ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… OLAP ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ запроса.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:
Π“Ρ€ΡƒΠΏΠΏΠ° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ – заработная ΠΏΠ»Π°Ρ‚Π°;
ΠŸΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ – ΠŸΡ€Π΅ΠΌΠΈΡ сотрудника;
Π˜Π·ΠΌΠ΅Ρ€Π΅Π½ΠΈΡ – ΠžΡ‚Π΄Π΅Π», Π”ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚ΡŒ.

ПослС привязки Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° созданном Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ отобразится Π΄Π°Π½Π½Ρ‹Π΅: