Langsung ke konten utama

Membuat Diagram Batang Sederhana pada Laman HTML Menggunakan d3.js

 Pertama, tentukan direktori (folder) di komputer kalian tempat kalian akan mengerjakan praktik ini. Bebas.

Kemudian buatlah sebuah file HTML, nama bebas, tapi saya beri nama generic: index.html.

Saran saya, gunakan editor teks semacam Visual Studio Code, Atom, Sublime Text, atau Notepad++. Boleh juga menggunakan sebuah Web IDE, atau bahkan hanya Notepad bawaan Windows. Saya menggunakan VS Code.

berikut isi file index html:

<!DOCTYPE html>
<html lang="id">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Diagram Batang</title>
</head>

<body>
    <!-- Muat modul d3.js -->
    <script src="https://d3js.org/d3.v6.js"></script>

    <!-- Div di bawah adalah tempat kita meletakkan diagram pada laman -->
    <div id="my_dataviz"></div>

    <script>
    // ...
    </script>
</body>

</html>



dan Silakan copy-paste kode di bawah ini ke dalam tag <script> yang ada teks // ... seperti terlihat di atas tadi.

// set the dimensions and margins of the graph
const margin = {top: 30, right: 30, bottom: 70, left: 60},
    width = 460 - margin.left - margin.right,
    height = 400 - margin.top - margin.bottom;

// append the svg object to the body of the page
const svg = d3.select("#my_dataviz")
  .append("svg")
    .attr("width", width + margin.left + margin.right)
    .attr("height", height + margin.top + margin.bottom)
  .append("g")
    .attr("transform", `translate(${margin.left},${margin.top})`);

// Parse the Data
d3.csv("data.csv").then( function(data) {

// X axis
const x = d3.scaleBand()
  .range([ 0, width ])
  .domain(data.map(d => d.Country))
  .padding(0.2);
svg.append("g")
  .attr("transform", `translate(0, ${height})`)
  .call(d3.axisBottom(x))
  .selectAll("text")
    .attr("transform", "translate(-10,0)rotate(-45)")
    .style("text-anchor", "end");

// Add Y axis
const y = d3.scaleLinear()
  .domain([0, 13000])
  .range([ height, 0]);
svg.append("g")
  .call(d3.axisLeft(y));

// Bars
svg.selectAll("mybar")
  .data(data)
  .join("rect")
    .attr("x", d => x(d.Country))
    .attr("y", d => y(d.Value))
    .attr("width", x.bandwidth())
    .attr("height", d => height - y(d.Value))
    .attr("fill", "#69b3a2")

})


Inilah hasil praktik dengan mengikuti langkah langkah berikut ini:



Komentar

Postingan populer dari blog ini

covid depok

  Metode-Metode Perancangan Sistem Informasi A. Metode System Development Life Cycle (SLDC) Metode ini adalah metode pengembangan sistem informasi yang pertama kali digunakan makanya disebut dengan metode tradisional. Metode ini prototype Adalah tahap-tahapan pekerjaan yang dilakukan oleh analis sistem dan programer dalam membangun sistem informasi. Adapun tahap-tahap tersebut yaitu: Melakukan survey dan menilai kelayakan proyek pengembangan sistem informasi. Tahap ini akan ditentukan ruang lingkup proyek bagi semua pemakai sistem informasi dan berbagai tingkat pertanggungjawaban, meneliti masalah dan berbagai kemungkinan adanya kendala, menentukan sasaran proyek dan menentukan solusinya. Hasil dari survey adalah laporan kelayakan studi berisi temuan-temuan, rekomendasi, pertimbangan biaya dan manfaat. Temuan ini harus diketahui oleh komite pengawas Mempelajari dan menganalisis sistem informasi yang sedang berjalan Mempelajari sistem yang sedang berjalan, mengetahui sebab dan kenda...