D3.js
  • D3.js Nedir, Ne Değildir?
  • JS Grafik Kütüphaneleri
  • Modüler D3.js
    • D3.js Eklenti Oluşturma
  • Başlangıç
  • Seçiciler
  • Element Biçimlendirme
  • Olaylar (Events)
  • Geçişler ve Animasyonlar
    • Kontrol Fonksiyonları
    • Bir Geçişin Yaşam Döngüsü
  • Ölçekler (Scales)
    • Sürekli Girdili ve Sürekli Çıktılı
    • Sürekli Girdili ve Kesikli Çıktılı
    • Kesikli Girdili ve Gesikli Çıktılı
  • Eksen (Axes)
  • Şekiller (Shapes)
    • Çizgi (line) Oluşturucu
    • Area (alan) Oluşturucu
    • Stack (yığın) Oluşturucu
    • Arc (yay) Oluşturucu
    • Pie (pasta) Oluşturucu
    • Symbols (semboller)
  • Düzenler (Layouts)
    • Tree Layout
    • Cluster Layout
    • Treemap Layout
    • Pack Layout
    • Partition Layout
    • Chord Layout
    • Force Layout
  • Kaynaklar
Powered by GitBook
On this page

Was this helpful?

Seçiciler

D3.js ile grafik oluşturmanın ilk aşaması element seçimi yapmak. Elinizdeki verileri sayfada göstermek için hangi elementleri kullanacağınızı seçtikten sonra tasarımlarını ve göstereceğiniz verileri eklersiniz. D3.js’in sağladığı seçici fonksiyonları kullanabilmek için CSS seçicilerini doğru bilmek önemli.

Seçilen elementler sayfada mevcutsa yapılan işlemler onların üstünde etkili olur. Fakat seçtiğiniz elementler sayfada yoksa belirttiğiniz şekilde elinizdeki veri sayısına bağlı olarak oluşturulur.

Örneğin bir isim listeniz var ve listede 5 adet isim var. body içerisinde ise 3 adet span elementi var. span elementlerini seçip bu verileri eklediğinizde ilk 3 veri sayfadaki span‘lara yazılır. Diğer veriler için yeni elementler oluşturulur. Önceki elementlerin başka bir şey için kullanılmadığından emin olmalısınız.

Örnek:

<html>
  <body>
    <script src="http://d3js.org/d3.v4.min.js" charset="utf-8"></script>
    <script>
      var nums = [10, 30, 50, 20, 80, 90]; 
      var svg = d3.select('body').append('svg');
    </script>
  </body>
</html> 

Yukarıda nums adında bir veri listemiz var ve adı svg olan yerel bir değişken oluşturduk. Bu kullanım d3.select('svg') ifadesi ile eşdeğerdir. SVG öğesi diğer tüm öğeleri içereceğinden, genişliğini ve yüksekliğini vb. ayarlayabiliriz. <rect> elementine ihtiyacımız var. Veri listesinde altı değer var, bu yüzden svg öğesini eklediğimiz şekilde ekleyebiliriz. Bu şekilde, d3.append('rect') kodunu altı defa yazmamız gerekir. Böyle yapmak kodu uzatacak ve anlamsız olacak. Seçimler bunu doğru bir şekilde yapmamızı sağlar:

var bars = d3.selectAll('rect'); 

Seçimler hem önceden var olan öğelerde çalışmanıza hem de ihtiyacınız olan öğelerin “temsilini” kullanmanıza olanak tanır. Seçimleri anlama D3 ile çalışmak için kritik bir giriş noktasıdır. Seçimler sayesinde, D3’ten, dizileri, seçili öğelere uygulamanızı sağlayacak farklı yöntemleri kullanabilirsiniz.

var nums = [10, 30, 50, 20, 80, 90]; 
var bars = svg.selectAll('rect').data(nums);

Yukarıdaki örnekte seçilen rect elementlerine elimizdeki verileri ekledik fakat body içerisinde rect olmadığı için bir çıktı alamayız. Bu durumda .enter() fonksiyonundan sonra element olmadığında ne yapması gerektiğini yazmamız gerekli.

var bars = svg.selectAll('rect').data(nums)
  .enter()
  .append('rect');
PreviousBaşlangıçNextElement Biçimlendirme

Last updated 5 years ago

Was this helpful?