Rumah  >  Artikel  >  hujung hadapan web  >  Cara menggunakan carta Sankey untuk memaparkan data dalam Highcharts

Cara menggunakan carta Sankey untuk memaparkan data dalam Highcharts

王林
王林asal
2023-12-17 16:41:21999semak imbas

Cara menggunakan carta Sankey untuk memaparkan data dalam Highcharts

Cara menggunakan rajah Sankey untuk memaparkan data dalam Highcharts

Sankey Diagram ialah jenis carta yang digunakan untuk menggambarkan proses yang kompleks seperti aliran, tenaga dan dana. Ia boleh memaparkan dengan jelas perhubungan dan aliran antara pelbagai nod, dan boleh membantu kami memahami dan menganalisis data dengan lebih baik. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Highcharts untuk mencipta dan menyesuaikan carta Sankey, dengan contoh kod khusus.

Pertama, kita perlu memuatkan perpustakaan Highcharts dan modul Sankey. Dalam halaman HTML, ia boleh diperkenalkan menggunakan kod berikut:

<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/sankey.js"></script>

Seterusnya, kita perlu menentukan bekas untuk meletakkan carta. Anda boleh mencipta elemen div dalam halaman HTML dan menentukan id yang unik. Contohnya: div元素,并指定一个唯一的id。例如:

<div id="container"></div>

然后,在JavaScript中,我们可以使用如下代码来创建一个Sankey图表:

Highcharts.chart('container', {
  chart: {
    type: 'sankey'
  },
  title: {
    text: '数据流动示例'
  },
  series: [{
    data: [{
      name: '节点1'
    }, {
      name: '节点2'
    }, {
      name: '节点3'
    }],
    links: [{
      source: '节点1',
      target: '节点2',
      value: 10
    }, {
      source: '节点1',
      target: '节点3',
      value: 5
    }, {
      source: '节点2',
      target: '节点3',
      value: 3
    }],
    nodeWidth: 30,
    nodePadding: 10,
    colorByPoint: true,
    tooltip: {
      pointFormat: '<b>{point.name}</b>: {point.value}'
    }
  }]
});

在上述代码中,我们首先指定了图表的类型为sankey。然后,在series中定义了数据和链接的关系。每个节点通过name来标识,而链接则由sourcetargetvalue来描述。其中,source表示起始节点,target表示目标节点,value表示流量的数值。我们还可以通过调整nodeWidthnodePadding来控制节点的宽度和间距,通过colorByPoint来设置节点的颜色,通过tooltip来定义鼠标悬停时的提示信息。

最后,通过调用Highcharts.chart方法,将图表渲染到指定的容器中。

在实际使用中,可以根据具体的需求对图表进行进一步定制。例如,可以设置标题、坐标轴、颜色等。以下是一个更完整的示例代码:

Highcharts.chart('container', {
  chart: {
    type: 'sankey'
  },
  title: {
    text: '数据流动示例'
  },
  plotArea: {
    colorByPoint: true
  },
  series: [{
    data: [{
      name: '节点1'
    }, {
      name: '节点2'
    }, {
      name: '节点3'
    }],
    links: [{
      source: '节点1',
      target: '节点2',
      value: 10
    }, {
      source: '节点1',
      target: '节点3',
      value: 5
    }, {
      source: '节点2',
      target: '节点3',
      value: 3
    }],
    nodeWidth: 30,
    nodePadding: 10,
    colors: ['#7cb5ec', '#2f7ed8', '#434348'],
    tooltip: {
      pointFormat: '<b>{point.name}</b>: {point.value}'
    }
  }]
});

在上述代码中,我们通过plotArea属性设置了节点的颜色,通过colorsrrreee

Kemudian, dalam JavaScript, kita boleh menggunakan kod berikut untuk mencipta carta Sankey:

rrreee

Dalam kod di atas, kami mula-mula menentukan jenis carta sebagai sankey. Kemudian, hubungan antara data dan pautan ditakrifkan dalam siri. Setiap nod dikenal pasti dengan nama dan pautan diterangkan oleh source, sasaran dan value. Antaranya, source mewakili nod permulaan, target mewakili nod sasaran dan value mewakili nilai trafik. Kami juga boleh mengawal lebar dan jarak nod dengan melaraskan nodeWidth dan nodePadding, tetapkan warna nod melalui colorByPoint dan gunakan petua alat untuk menentukan maklumat segera apabila tetikus melayang. 🎜🎜Akhir sekali, tunjukkan carta ke dalam bekas yang ditentukan dengan memanggil kaedah Highcharts.chart. 🎜🎜Dalam penggunaan sebenar, carta boleh disesuaikan lagi mengikut keperluan khusus. Sebagai contoh, anda boleh menetapkan tajuk, paksi, warna, dsb. Berikut ialah kod contoh yang lebih lengkap: 🎜rrreee🎜Dalam kod di atas, kami menetapkan warna nod melalui atribut plotArea dan menentukan penyesuaian nod melalui colors kod> warna atribut. Dengan cara ini, nod yang berbeza akan mempunyai warna yang berbeza. 🎜🎜Dengan contoh kod di atas, kita boleh menggunakan carta Sankey untuk memaparkan data dalam Highcharts. Saya harap artikel ini membantu anda dan boleh digunakan dalam aplikasi praktikal. 🎜

Atas ialah kandungan terperinci Cara menggunakan carta Sankey untuk memaparkan data dalam Highcharts. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn