Günümüzde veri görselleştirmesi, karmaşık bilgilerin daha anlaşılır hale getirilmesi için hayati bir öneme sahiptir. **JavaScript**, etkileşimli grafikler oluşturmak için en popüler dillerden biridir. Bu yazıda, JavaScript ile etkileşimli grafikler oluşturmanın yollarını keşfedeceğiz ve örnek kodlar paylaşacağız.
JavaScript Grafik Kütüphaneleri
Etkileşimli grafikler oluşturmak için birçok JavaScript kütüphanesi mevcuttur. Bu kütüphaneler, geliştiricilerin grafikler oluşturmasını kolaylaştırmakta ve geniş bir özellik yelpazesi sunmaktadır. En popüler kütüphanelerden bazıları şunlardır:
1. **D3.js:** Verileri bağlamak ve grafikler oluşturmak için güçlü bir kütüphanedir. Özelleştirme imkanı sunduğu için karmaşık veri görselleştirmeleri için idealdir.
2. **Chart.js:** Basit ve hızlı bir şekilde grafikler oluşturmak için kullanılır. Öğrenmesi kolaydır ve güzel görünüme sahip grafikler sunar.
3. **Plotly.js:** Hem 2D hem de 3D interaktif grafikler oluşturmak için kullanılan bir kütüphanedir. Veri analizi ve görselleştirme alanında etkilidir.
4. **Highcharts:** Kullanımı kolay bir kütüphanedir ve belirli bir lisansa sahiptir. Etkileşimli ve mobil uyumlu grafikler oluşturmak için kullanılır.
D3.js ile Basit Bir Grafik Oluşturma
D3.js kullanarak basit bir çubuk grafik oluşturmak için aşağıdaki adımları takip edebilirsiniz:
1. D3.js kütüphanesini projenize dahil edin.
2. HTML yapısını oluşturun.
3. JavaScript kodunu yazın.
**HTML Yapısı:**
Kod:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>D3.js Çubuk Grafik</title>
<script src="https://d3js.org/d3.v6.min.js"></script>
</head>
<body>
<svg width="500" height="300"></svg>
<script src="script.js"></script>
</body>
</html>Kod:
const data = [25, 30, 45, 60, 20];
const svg = d3.select("svg");
const margin = { top: 20, right: 20, bottom: 30, left: 40 };
const width = svg.attr("width") - margin.left - margin.right;
const height = svg.attr("height") - margin.top - margin.bottom;
const x = d3.scaleBand()
.domain(data.map((d, i) => i))
.range([0, width])
.padding(0.1);
const y = d3.scaleLinear()
.domain([0, d3.max(data)])
.nice()
.range([height, 0]);
const g = svg.append("g")
.attr("transform", `translate(${margin.left},${margin.top})`);
g.append("g")
.attr("class", "axis axis--x")
.attr("transform", `translate(0,${height})`)
.call(d3.axisBottom(x).tickFormat(i => i 1));
g.append("g")
.attr("class", "axis axis--y")
.call(d3.axisLeft(y));
g.selectAll(".bar")
.data(data)
.enter().append("rect")
.attr("class", "bar")
.attr("x", (d, i) => x(i))
.attr("y", d => y(d))
.attr("width", x.bandwidth())
.attr("height", d => height - y(d));Chart.js ile Çizgi Grafiği Oluşturma
**Chart.js** ile bir çizgi grafiği oluşturmak için aşağıdaki adımları takip edebilirsiniz:
**HTML Yapısı:**
Kod:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Chart.js Çizgi Grafiği</title>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
</head>
<body>
<canvas id="myChart" width="400" height="200"></canvas>
<script src="script.js"></script>
</body>
</html>
```
**JavaScript Kodu (script.js):**
```javascript
const ctx = document.getElementById('myChart').getContext('2d');
const myChart = new Chart(ctx, {
type: 'line',
data: {
labels: ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs'],
datasets: [{
label: 'Gelir',
data: [12, 19, 3, 5, 2],
borderColor: 'rgba(75, 192, 192, 1)',
borderWidth: 1,
fill: false,
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});Sonuç
JavaScript, etkileşimli grafikler oluşturmak için güçlü bir araçtır. D3.js ve Chart.js gibi kütüphaneler, veri görselleştirmelerini kolaylaştırmakta ve geliştirici deneyimini artırmaktadır. Yukarıdaki örneklerle, JavaScript kullanarak kendi grafiklerinizi oluşturabilir ve veri analizlerinizi daha etkili bir biçimde sunabilirsiniz. Unutmayın, görselleştirme süreci, doğru verilerin seçilmesi ve kullanıcı dostu bir tasarım ile desteklenmelidir.
)

