Grafikler için gereken x ve y eksenlerini çizmek için D3.js'in yardımcı fonksiyonlarını kullanabiliriz. Bunun için ölçekleride kullanmalıyız.
En yaygın eksen türü doğrusal eksendir. Temelde, eksene sayısal bir değişken elenir. Saçılma grafiği veya histogram gibi grafik türlerinin çoğunda kullanılır.
Doğrusal Eksen (Linear Axis
Örnek:
var svg = d3.select("#res")
.append("svg")
.attr("width", 1000)
var x = d3.scaleLinear()
.domain([0, 100]) // axis değeri sayısal olarak 0, 100 arası olacak
.range([100, 800]); // pixsel karşılığı olarak 100px-800px arası olacak
svg
.append("g")
.attr("transform", "translate(0,50)") // axis pozisyonu ayarlanır.
.call(d3.axisBottom(x));
Aşağıda farklı bir ölçek kullanarak başka bir örnek yapalım.
Yukarıdaki doğrusal ölçeklere çok benzer, ancak çıkış aralığı değeri hesaplanmadan önce giriş alanı değerine bir logaritmik dönüşüm uygular.
log(0) = -∞, dolayısıyla alan kesinlikle pozitif veya negatif olmalıdır.
var svg = d3.select("#log_demo")
.append("svg")
.attr("width", 1000)
.attr("height", 200)
var x = d3.scaleLog()
.domain([1, 1000])
.range([100, 800])
.base(10)
svg
.append("g")
.attr("transform", "translate(0,150)")
.call(d3.axisBottom(x).tickFormat(d3.format(".2")))